13 Kasım 2010 Cumartesi

Faktoriyel programını fonksiyon ile yapalım

Arkadaşlar faktoriyel bulma işlemini bir kaç şekilde yapmıştık do-while while vs. bu sefer ise bunu fonksiyon kullanarak yaptım. Programın bütün satır işlemlerini yazdım umarım anlaşılır olmuştur.
#include<stdio.h>
int faktoriyel(long say1)// faktoriyel islemi
{
    int i=1,sonuc=1;// i ve sonuc degiskenlerini tanittik ve baslangic degerlerini girdik
    while(i<=say1)//dongumuz i (sayac ve girilen sayi esitlenene kadar devamedecek)
    {
        sonuc*=i; // asl faktýriyel isleminin yapildigi bolum
        i++; // sayacimizi her islem sonrasi bir artirdik
    }
   
return sonuc; // islem sonucumuz bitti ve bekliyor
}
main() // ana program
{
    int a,j; // degisken tanimlamalari
    long son; // islem sonucumuzu long tipi sectik sonuclarimiz uzun olmasi nedeniyle
    char bitir;// islem bitmesini istedigimiz durumda degerin atanacagi degisken
    do
    {
        printf("\nSayiyi Girin:");scanf("%d",&a); //islem yapilacak sayiyi girmesini istedik
        son=faktoriyel(a); // sayiyi alip faktoriyel fonksiyonundan cikan degeri a degiskenine aktardýk
        printf("Islem Sonucu=%d\n",son); // islem sonucumuzu yazdirdik
        printf("Devam Edecek misiniz?(e/h)\n"); // kullaniciya msj ile baska sayi girilip girilmeyecegini sorduk
        bitir=getche(); // kullanicinin cevabini bitir degiskenine aldik
    }while(bitir!='h' && bitir!='H'); // eger bitir h den farklý ve  H den farkli ise yeni sayi girisi icin tekrar donecek