C++ Matematik Kütüphanesi
C++, sayılar üzerinde matematiksel işlemleri kolayca gerçekleştirmenizi sağlayan bir çok fonksiyona sahiptir. C++ da basit matematik işlemlerini (4 işlem vs.) gerçekleştirebilmek için her hangi bir kütüphane ya da başlık dosyasına ihtiyacınız bulunmuyor. Aritmatik operatörler ile bu işlemleri kolayca gerçekleştirebilirsiniz. Aritmatik operatörler için C++'da Operatörler başlıklı içeriğimi inceleyebilirsiniz. Bu makalede C++ matematik kütüphanesi/başlığı tarafından sağlanan fonksiyon ve metotları ele alacağım.
Öncelikle <cmath> kütüphanesini dosyanıza dahil etmelisiniz. Bu makalede bahsedilecek fonksiyon ve metotlar <cmath> kütüphanesi tarafından sunuluyor.
#include <cmath>
Dipnot: <cmath> kütüphanesi bir C kütüphanesi olan math.h başlığından türetilmiştir.
Bu kütüphane son derece geniştir. Burada en sık kullanılan fonksiyonlara değineceğim.
pow()
Üssü sayıları hesaplamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
cout<<"7^3 = "<<pow(7.0, 3.0)<<endl;
cout<<"4.73^8 = "<<pow(4.73, 8.0)<<endl;
cout<<"32.01^1.54 = "<<pow(32.01, 1.54)<<endl;
return 0;
}
sqrt()
Karakök alma (hesaplama) için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double param, res;
param = 1024.0;
res = sqrt(param);
cout<<param<<" karekökü : "<<res<<endl;
return 0;
}
hypot()
Hipotenüs'ü hesaplamak için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double x, y, res;
x = 3;
y = 4;
res = hypot(x, y);
cout<<x<<", "<<y<<" ve "<<res<<" dik açılı bir üçgen oluşturur."<<endl;
return 0;
}
ceil()
Ondalıklı sayıyı yukarı doğru yuvarlamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
cout<<"ceil(3.8) = "<<ceil(3.8)<<endl;<em> //4</em>
cout<<"ceil(2.3) = "<<ceil(2.3)<<endl;<em> //3</em>
cout<<"ceil(-2.3) = "<<ceil(-2.3)<<endl;<em> //-2</em>
cout<<"ceil(-3.8) = "<<ceil(-3.8)<<endl;<em> //-3</em>
return 0;
}
floor()
Ondalıklı sayıyı aşağı yönlü yuvarlamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
cout<<"floor(3.8) = "<<floor(3.8)<<endl;<em> //3</em>
cout<<"floor(2.3) = "<<floor(2.3)<<endl;<em> //2</em>
cout<<"floor(-2.3) = "<<floor(-2.3)<<endl;<em> //-3</em>
cout<<"floor(-3.8) = "<<floor(-3.8)<<endl;<em> //-4</em>
return 0;
}
round()
Ondalıklı sayıları en yakın tam sayıya yuvarlamakta kullanılır. Örneğin sonuç 2.3 değeri için 2 olurken 2.6 değeri için 3 olur.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
cout<<"round(3.8) = "<<round(3.8)<<endl;<em> //4</em>
cout<<"round(2.3) = "<<round(2.3)<<endl;<em> //2</em>
cout<<"round(-2.3) = "<<round(-2.3)<<endl;<em> //-2</em>
cout<<"round(-3.8) = "<<round(-3.8)<<endl;<em> //-4</em>
return 0;
}
cos()
Kosinüs hesaplamak için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 60.0;
res = cos(param * PI / 180.0);
cout<<param<<" derecenin kosinüsü "<<res<<" dir."<<endl;
return 0;
}
sin()
Sinüs hesaplamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 60.0;
res = cos(param * PI / 180.0);
cout<<param<<" derecenin kosinüsü "<<res<<" dir."<<endl;
return 0;
}
tan()
Tanjant hesaplamaktan kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 45.0;
res = tan(param*PI/180.0);
cout<<param<<" derecenin tanjantı "<<res<<" dir."<<endl;
return 0;
}
acos()
Arkkosinüs hesaplamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 0.5;
res = acos(param)*180.0/PI;
cout<<param<<" arkkosinüs için "<<res<<" derecedir."<<endl;
return 0;
}
asin()
Arksinüs hesaplamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 0.5;
res = asin(param)*180.0/PI;
cout<<param<<" arksinüs için "<<res<<" derecedir."<<endl;
return 0;
}
atan()
Arktanjantı hesaplamak için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 1.0;
res = atan(param)*180.0/PI;
cout<<param<<" arktanjant için "<<res<<" derecedir."<<endl;
return 0;
}
atan2()
Arktanjantı 2 parametre ile hesaplamak için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double x, y, res;
x = -10.0;
y = 10.0;
res = atan2(y,x)*180.0/PI;
cout<<"(x="<<x<<" y="<<y<<") için arktanjantı "<<res<<" derecedir."<<endl;
return 0;
}
cosh()
Hiperbolik kosinüs hesaplaması yapar.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double param, res;
param = log(2.0);
res = cosh(param);
cout<<param<<" hiperbolik kosinüsü "<<res<<" dir."<<endl;
return 0;
}
sinh()
Hiperbolik sinüsü hesaplamak için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double param, res;
param = log(2.0);
res = sinh(param);
cout<<param<<" hiperbolik sinüsü "<<res<<" dir."<<endl;
return 0;
}
tanh()
Hiperbolik tanjantı hesaplamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double param, res;
param = log(2.0);
res = tanh(param);
cout<<param<<" hiperbolik tanjantı "<<res<<" dir."<<endl;
return 0;
}
acosh()
Hiperbolik kosinüs alanını hesaplamak için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double param, res;
param = exp(2) - sinh(2);
res = acosh(param);
cout<<param<<" hiperbolik kosinüs alanı "<<res<<" radyandır."<<endl;
return 0;
}
asinh()
Hiperbolik sinüs alanını hesaplamak için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double param, res;
param = exp(2) - cosh(2);
res = asinh(param);
cout<<param<<" hiperbolik sinüs alanı "<<res<<" dir."<<endl;
return 0;
}
atanh()
Hiperbolik tanjant alanı hesaplamakta kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = tanh(1);
res = atanh(param);
cout<<param<<" hiperbolik tanjant alanı "<<res<<" dir."<<endl;
return 0;
}
exp()
Üstel değeri hesaplamaya yarar.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 5.0;
res = exp(param);
cout<<param<<" üstel değeri "<<res<<" dir."<<endl;
return 0;
}
log()
Logaritma için kullanılır.
#include <iostream>
#include <cmath>
using namespace std;
#define PI 3.14159265
int main(){
double param, res;
param = 5.5;
res = log(param);
cout<<"log("<<param<<") = "<<res<<endl;
return 0;
}
Tüm bu fonksiyonların yanı sıra matematik işlemleri için kullanabileceğiniz bir çok fonksiyon bulunuyor. Burada sadece en sık kullanılan fonksiyonları ve kullanım şeklini hızlıca aktarmaya çalıştım.
Yazar
Muhammet Şafak
Yazılım Mühendisi & Full-Stack Geliştirici. PHP, Laravel ve modern web teknolojileri üzerine yazıyor.
HakkımdaYorumlar 0
Henüz yorum yapılmamış.
İlk yorumu siz yapın!
Yorum Yaz
Yorumunuz moderasyon sonrası yayınlanacaktır.