Koşul Operatörü(Uygulama)-2
/* Açıklama : Koşul operatörünün derinlemesine incelenmesi.
* Koşul operatörü kısa bir özet.
* Koşul operatörünün return ile kullanılması
* Koşul operatörünün fonksiyon parametresine değer atamada kullanılması.
* Basit bir uygulama.
*/
#include <stdio.h>
#include <stdlib.h>
/* max fonksiyonu parametre olarak aldığı a ve b'den, büyük olanı
* geri döndürür.Fonksiyonun içinde koşul operatörü kullanıldı.
*/
int max(int a, int b)
{
return (a > b)? a : b;
}
// 1- 1/3 + 1/5 - 1/7......... ... = pi/4 yakınsar
double getSeries(int countSeries)
{
double retValue = 0;
int k = 0;
for(k = 0; k < countSeries; ++k)
{
retValue += (( k%2) ? -1.0: 1.0 )/(2*k+1);
}
return retValue;
}
int main(void) {
/* koşul operator kısa özet ( ifade1 ? ifade2 : ifade3 )
* Nesneye değer atamasında kullanırız,
*/
{
int tempValue = 0;
int x = 10;
int y = 20;
tempValue = ((x > y) ? x : y ) + 50;
printf("tempValue = %d\n", tempValue);
}
//Koşul operatörünün geri dönüşte return ile birlikte kullanılması
{
int retValue = max(10,5);
printf("max = %d\n", retValue);
}
//Koşul operatörünün fonksiyon parametresine değer atamadan kullanılması
{
int x = 10;
int y = -5;
int retValue = max(((x>0)?x:0), ((y>0)?y:0));
printf("max = %d\n", retValue);
}
// Koşul operatörünün printf fonksiyonu ile kullanılması
{
int x = 10;
int y = 5;
(x>y)?printf("x buyuk y\n"):printf( "x kucuk y\n");
}
//kosul operatorunde tur donusturme
{
double retValue = (10)? 10.23f : 10;
printf("retValue = %f\n", retValue);
}
//koşul operatörüne ornek uygulama
{
double retValue = getSeries(1000000);
printf("Series return value = %lf\n", retValue);
printf("pi value = %lf\n", 4.0 * retValue);
}
return EXIT_SUCCESS;
}
Hiç yorum yok:
Yorum Gönder