Merhaba arkadaşlar;
Bu yazımda üç sayıdan en büyük sayıyı bulan bir program yazacağım C programlama diliyle. Bir önceki yazımızda if – else seçim yapılarını içeren bir program yazmıştım. Şimdide iç içe if – else seçim yapılarını içeren bir program yazıp açıklayacağım. Sadece kod yazıp bırakmak istemiyorum. İyi bir programcı olmak istediğim için proje şeklinde yapmak daha mantıklı geliyor. İşi ciddiye almak gerek de mi arkadaşlar? Analiz, tasarım yaparsak kodlamada fazla zorlanmayız. Basit bir örnek vermek gerekirse: “İngilizce öğretmeni size kompozisyon yazma ödevi verdi. Siz önce ne yazacağınızı anlamaya çalışırsınız. Sonra neler yazacağınızı planlarsınız. En son olarak da İngilizce kompozisyon yazmaya başlarsınız.”
Program Amacı: Üç sayıdan en büyüğünü bulmak.
Analiz:
a, b, c sayılarımız olsun.
a>c ve c>b ise en büyük sayı a’dır.
b>a ve a>c ise en büyük sayı b’dir.
c>b ve b>a ise en büyük sayı c’dir.
Analize göre tasarım yapılır. Fakat bu analize göre tasarım ve kod çok uzun ve karmaşık olur. Bizim amacımız kargaşayı en aza indirmek olduğu için iç içe if – else seçim yapılarını kullanacağız.
Tasarım:
Değişkenleri tanımla…
Kullanıcıdan sayıları iste…
Şartı (iç içe if – else seçim yapılarıyla) sağla…
Sonucu ekrana yazdır…
Kod:
#include <stdio.h>
int main()
{
int a,b,c;
printf("3 sayi giriniz:");
scanf("%d%d%d", &a, &b, &c);
if(a>c)
if(c>b)
printf("En buyuk sayi %d'dir\n",a);
else
printf("En buyuk sayi %d'dir\n",b);
else if (c>b)
printf("En buyuk sayi %d'dir\n",c);
return 0;
}
Program Çıktısı:
3 sayi giriniz: 25 4 13
En buyuk sayi 25’dir.
Press any key to continue
İç içe if – else seçim yapısını zevkli bir bulmaca gibi kabul ederseniz, anlamanız daha kolay olacaktır. Bulmacaya başlayalım mı?
if(a>c)
if(c>b)
printf("En buyuk sayi %d'dir\n",a); (bu kısma kadar her şey normal :a>c>b)
else (c>b değilse: b>c ve a>c olacağından en büyük sayı b’dir)
printf("En buyuk sayi %d'dir\n",b);
else if (c>b) (a>c değilse: c>a ve c>b olacağından en büyük sayı c’dir.)
printf("En buyuk sayi %d'dir\n",c);
Bulmaca çözüldü. Böylece bir yazınında sonuna geldik. Başka yazılarda görüşmek dileğiyle…
Yüzünüzden gülümseme, kalbinizden sevgi hiç eksik olmasın…
C’li günler :)
Kaynak : asundinay.com
|