On Sayı İçinde Maksimum Dört Sayı [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Döngü içinde alınan on sayıdan ilk dördü tutularak ve geri kalanlar da onlarla karsılastırılarak max 4 sayıyı bulan program.
Programda küçük değişiklikler yapılarak alınan sayı adedi artırılabilir.
Kod:
#include<stdio.h>
#include<conio.h>
void max_bul(const int[]);
int main()
{
int dizi[10],i;
printf("10 elemani giriniz\n");
for(i=0; i<=9; i++)
{
scanf("%d",&dizi[i]);//dısarıdan alınan sayılar teker teker dizi elemanlarına atanır
}
max_bul(dizi);//sadece dizi ismini yazmak bütün dizi elemanlarının fonsiyona gönderilmesini saglar
getch();
}
void max_bul(const int dizi[])
{
int max1=0,max2=0,max3=0,max4=0,i;
for(i=0; i<=9; i++)
{
if(dizi[i]>max1)
{
max4=max3; //max1 en buyuk sayıdır.yeni gelen sayi max1'den büyükse max'daki sayılar birer kaydırılır
max3=max2; //ve en büyük sayi max1'e atanır
max2=max1;
max1=dizi[i];
}
else if(dizi[i]>max2)
{
max4=max3; //eger en büyük sayidan kücükse bu sefer en büyük ikinci sayiyla karsılastırılır.
max3=max2; //bundan büyükse aynı işlem yapılır
max2=dizi[i];
}
else if(dizi[i]>max3)
{
max4=max3; //ikinci büyük sayidan da kücükse ücüncü max sayiyla karsılastırılır
max3=dizi[i];
}
else if(dizi[i]>max4)
{
max4=dizi[i]; //ilk ücünden kücükse son max sayıyla karsılastırılır ve buyuk oldugu taktırde üstüne yazdırılır
}
}
printf("en buyuk sayi=%d\nikinci buyuk sayi=%d\n",max1,max2); // max sayılar fonksiyon icinde yazdırıldıgından main fonksiyonuna
printf("ucuncu buyuk sayi=%d\ndorduncu buyuk sayi=%d\n",max3,max4); // sayi döndürülmez, o yüzden void kullanılır.
}
|