Bugün sizlere C’de klavyeden girilen 10 sayı arasında en büyük iki sayıyı bulma işlemini nasıl yapılacağından bahsedeceğim. Öncelikle hangi programlama dilini kullanırsanız kullanın en büyük sayıyı bulma gibi uygulamalar sıklıkla kullanıldığını belirtmekte fayda var.
Peki en büyük sayıyı nasıl buldururuz? Bu tür sorularda ilk akla gelen yöntem girilen ilk sayıyı en büyük olarak kabul etmek, daha sonra okunan sayıları birer birer en büyük kabul edilen sayı ile karşılaştırarak son okunan sayıyı en büyük olarak kullanmaktır.
Klavyeden kaç sayı girilmesini istiyorsanız bunu bir döngü içerisinde belirterek tüm sayılar için işlemin tekrarlanması gerekmektedir.Çalışma mantığı kısaca budur.
C’de Klavyeden Girilen 10 Sayı Arasında En Büyük iki Sayıyı Bulma
En büyük veya en küçük sayıyı bulduran uygulamalarda mutlaka bir kıyaslama olacağından if-else (koşul) mutlaka kullanılmalıdır. Eğerki bir kaç sayıyı kıyaslamayacaksınız for veya while döngüsü kullanmanız gerekecektir. Çok fazla lafı uzatmadan aşağıdaki kodu aşama aşama inceleyerek ne yaptığımı anlamaya çalışmanızı tavsiye ederim.
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 30 31 |
#include<stdio.h> #include<conio.h> void buyukBul() { int sayi=0,enBuyuk1,enBuyuk2,i; enBuyuk1=sayi; for(i=1;i<11;i++) { printf("\n%d. sayi=",i); scanf("%d",&sayi); if (sayi>enBuyuk1) { enBuyuk2=enBuyuk1; enBuyuk1=sayi; } else if (sayi>enBuyuk2) enBuyuk2=sayi; } printf("en buyuk sayi : %d \n",enBuyuk1); printf("en buyuk 2. sayi :%d \n",enBuyuk2); } int main() { buyukBul(); return 0; } |
Yukarıdaki kodda ben for döngüsü kullandım siz aşağıda gösterdiğim gibi while döngüsü kullanarakta yapabilirsiniz.
1 2 3 4 |
while( sayi <= 10) { //for döngüsü içindeki tüm kodlar } |
Ben de kodlamayı yeni yeni öğrenmekteyim; ne öğrendiysem sizlerle paylaşmaya çalışıyorum. Eksiğim, hatam olursa veya alternatif çözümleriniz olursa lütfen yorum kısmından veya iletişim kısmından yazalım. İyi kodlamalar..
ellerine saglik abim
Sağol kardeşim, kolay gelsin.