Şimdi Ara

çok basit ama ...

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir (1 Mobil) - 1 Masaüstü1 Mobil
5 sn
7
Cevap
0
Favori
369
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • #include <iostream>
    #include<conio.h>
    using namespace std;
    int main()
    {
    int i=0,sayi;
    int faktor=1;
    cout<<"faktoriyeli alinacak sayiyi giriniz:"<<"\t\n";
    cin>>sayi;
    while(i<=sayi)
    {
    i++;
    faktor=faktor*i;
    }
    cout<<"sonuc="<<faktor<<endl;
    getch();
    return 0;


    sayının faktörüyelini alan c++ programını yazdım sonunda galiba öğrenmeye başlıyorum.Bunu daha fazla nasıl geliştirebilirim bi bakarsanız sevinirim...



  • güzel şimdi bunu bir fonksiyon yap. fonksiyona sayıyı parametre gir, o da geri faktoriyelini dönsün.
  • ne yapacam hiç bişey anlamadım biraz açarmısın...
  • quote:

    Orjinalden alıntı: mavilider

    ne yapacam hiç bişey anlamadım biraz açarmısın...


    Arkadas sunu soylemek istiyo...bu program sadece main fonksiyonundan olusuyo...simdi buna baska bir fonksiyon yaz....o fonksiyona faktoriyelini bulmak istedigin sayiyi parametre olarak gonder...o fonksiyon da o sayinin faktoriyelini dondursun...ve bunu da main fonksiyonunda bastir...
  • ben onu asla yapamam bi zahmet bi el atında bende öğreneyim...
  • buyur kardes...bu faktoriyel programinin 2 fonksiyonlu hali...yalniz diger fonksiyon recursive(tekrarlayan) bir fonksiyon...

    #include<stdio.h>
    int main()
    {
    unsigned int number;
    unsigned int result;
    printf("Enter a positive integer\n");
    scanf("%d",&number);
    result=factorial(number);
    printf("The result is %d\n",result);

    return 0;
    }

    int factorial(unsigned int n)
    {
    if(n==1 || n==0)
    return 1;
    else
    return n * factorial(n-1);
    }
  • quote:

    Orjinalden alıntı: mavilider

    ben onu asla yapamam bi zahmet bi el atında bende öğreneyim...


    yapacağın işlem çok basit while döngüsünü alıp ayrı bir fonksiyona koyacaksın.

    #include <iostream>
    #include<conio.h>
    using namespace std;
    int main()
    {
    int sayi;
    int faktor=1;
    cout<<"faktoriyeli alinacak sayiyi giriniz:"<<"\t\n";
    cin>>sayi;
    faktor=faktoriyel(sayi);
    cout<<"sonuc="<<faktor<<endl;
    getch();
    return 0;
    }


    int faktoriyel(int sayi)
    {
    int i=0;
    int faktor=1;

    while(i<=sayi)
    {
    i++;
    faktor=faktor*i;
    }
    return faktor;
    }


    farkettiysen while döngüsünün yerine

    faktor=faktoriyel(sayi);

    satırı geldi. burada faktoriyel isimli fonksiyonu çağırıyoruz ve parametre olarak sayi değişkenini gönderiyoruz. Fonksiyonun içinde while döngüsü çalışıyor ve hesaplanan sonuç return deyimi ile geri döndürülüyor. peki bu bize ne kazandırıyor? bu sayede tekrar tekrar kod yazmaktan kurtulmuş oluyoruz. mesela iki ayrı sayının faktoriyelini hesaplayıp toplamak için

    faktoriyel(x) + faktoriyel(y)

    yazmak yeterli, ya da bir sayının faktoriyelinin faktoriyelini almak için

    faktoriyel(faktoriyel(x))

    yazabiliriz. Sum 41 arkadaş recursive fonksiyon yazmış ama şu aşamada biraz erken gibi geldi bana.
    iyi çalışmalar, kolay gelsin..




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.