C Programlama Dili Aritmetik Fonksiyonlar (math.h & stdlib.h)
C Programlama Dili Aritmetik Fonksiyonlar
Bir program yazarken bazı matematiksel işlemlere ihtiyaç duyabiliriz. Bu matematik işlemlerini gerçekleştirmek için bazı hazır fonksiyonlara sahibiz. Bu fonksiyonlara aritmetik fonksiyonlar denmektedir. Birazdan bahsedeceğim bu fonksiyonları “math.h”, “stdlib.h” kütüphaneleri desteklemektedir. Şimdi gelin c programlama dili aritmetik fonksiyonların neler olduğunu ve nasıl kullanıldıklarını görelim.
Fonksiyon | Açıklama |
---|---|
abs() | Bu fonksiyon verilen tam sayının mutlak değerini döndürür. Çıktı her zaman pozitiftir. |
floor() | Bu fonksiyon yuvarlama fonksiyonudur.Değişken tipi double olmalı. Bu fonksiyon sonucu küçük sayıya yuvarlar. |
round() | Verilen sayının ondalık kısmı .1 ve .5 arasında ise bir alta yuvarlar. Eğer .5.9 arasında ise bir üste yuvarlar. |
ceil() | Bu fonksiyon yuvarlama fonksiyonudur.Değişken tipi double olmalı. Bu fonksiyon sonucu büyük sayıya yuvarlar. |
sin() | Bu fonksiyon, sinüs değerini hesaplamak için kullanılır. |
cos() | Bu fonksiyon, cosinüs değerini hesaplamak için kullanılır. |
cosh() | Bu fonksiyon hiperbolik kosinüsü hesaplamak için kullanılır. |
exp() | Bu fonksiyon basitçe düşünecek olursak e değerinin istenilen üssünü almaktadır. |
tan() | Bu fonksiyon tanjant değerini hesaplamak için kullanılır. |
tanh() | Bu fonksiyon hiperbolik tanjant değerini hesaplamak için kullanılır. |
sinh() | Bu fonksiyon hiperbolik sinüs değerini hesaplamak için kullanılır. |
log() | Bu fonksiyon logaritmik hesaplama için kullanılır. |
log10() | Bu fonksiyon logaritma 10 değerindeki fonksiyonlar hesaplamasında kullanılır. |
sqrt() | Bu fonksiyon verilen değerin karekökünü bulur. |
pow() | Bu fonksiyon verilen iki sayının (kök ve üst) kabul ederek üstel değerini bulur. |
Gördüğünüz üzere bu fonksiyonlar matematiksel işlemlerde çok kolaylık ve hız kazandırmaktadır. Ama size tavsiyem bu fonksiyonları kullanmadan önce kendiniz algoritmalarını kurarak fonksiyonsuz çözmeyi denemelisiniz. Şimdi kod bu fonksiyonların bazılarını kod üzerinde görelim.
NOT: math header dosyasını linuxta kullandığınızda derleme işlemi sırasında ‘-lm’ kullanmanız gerekir. Örn:
gcc main.c -lm |
komutu ile derlemeniz gerekir
Kod:
1 2 3 4 5 6 7 8 9 10 11 |
#include <stdio.h> #include <stdlib.h> int main() { int x = abs(200); int y = abs(-400); printf("Mutlak degeri x = %d\n", x); printf("Mutlak degeri y = %d \n", y); return 0; } |
Çıktı:
1 2 |
Mutlak degeri x = 200 Mutlak degeri y = 400 |
Kod 2:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#include <stdio.h> #include <math.h> int main() { float i = 0.314; float j = 0.25; float k = 6.25; float sin_degeri = sin(i); float cos_degeri = cos(i); float tan_degeri = tan(i); float sinh_degeri = sinh(j); float cosh_degeri = cosh(j); float tanh_degeri = tanh(j); float log_degeri = log(k); float log10_degeri = log10(k); float exp_degeri = exp(k); printf("Deger: sin(%f) : %f \n", i, sin_degeri); printf("Deger: cos(%f) : %f \n", i, cos_degeri); printf("Deger: tan(%f) : %f \n", i, tan_degeri); printf("Deger: sinh(%f) : %f \n", j, sinh_degeri); printf("Deger: cosh(%f) : %f \n", j, cosh_degeri); printf("Deger: tanh(%f) : %f \n", j, tanh_degeri); printf("Deger: log(%f) : %f \n", k, log_degeri); printf("Deger: log10(%f) : %f \n", k, log10_degeri); printf("Deger: exp(%f) : %f \n", k, exp_degeri); return 0; } |
Çıktı:
1 2 3 4 5 6 7 8 9 |
Deger: sin(0.314000) : 0.308866 Deger: cos(0.314000) : 0.951106 Deger: tan(0.314000) : 0.324744 Deger: sinh(0.250000) : 0.252612 Deger: cosh(0.250000) : 1.031413 Deger: tanh(0.250000) : 0.244919 Deger: log(6.250000) : 1.832582 Deger: log10(6.250000) : 0.795880 Deger: exp(6.250000) : 518.012817 |
Kod3:
1 2 3 4 5 6 7 8 |
#include <stdio.h> #include <math.h> int main() { printf("3 ussu 5 = %f\n", pow(3, 5)); printf("5 ussu 3 = %f\n", pow(5, 3)); return 0; } |
Çıktı:
1 2 |
3 ussu 5 = 243.000000 5 ussu 3 = 125.000000 |
Kod4:
1 2 3 4 5 6 7 8 |
#include <stdio.h> #include <math.h> int main() { printf("81'in koku = %f\n", sqrt(81)); printf("256'nin koku = %f\n", sqrt(256)); return 0; } |
Çıktı:
1 2 |
81'in koku = 9.000000 256'nin koku = 16.000000 |
Leave a reply
Lütfen yorum için giriş yap ve yakayıt ol Teşekkürler .