Kategoriler
C/C++

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; //4
    cout<<"ceil(2.3) = "<<ceil(2.3)<<endl; //3
    cout<<"ceil(-2.3) = "<<ceil(-2.3)<<endl; //-2
    cout<<"ceil(-3.8) = "<<ceil(-3.8)<<endl; //-3
    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; //3
    cout<<"floor(2.3) = "<<floor(2.3)<<endl; //2
    cout<<"floor(-2.3) = "<<floor(-2.3)<<endl; //-3
    cout<<"floor(-3.8) = "<<floor(-3.8)<<endl; //-4
    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; //4
    cout<<"round(2.3) = "<<round(2.3)<<endl; //2
    cout<<"round(-2.3) = "<<round(-2.3)<<endl; //-2
    cout<<"round(-3.8) = "<<round(-3.8)<<endl; //-4
    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.

Bir Cevap Yazın