24 Kasım 2015 Salı

C++ Faktoriyel Hesaplama

C++ programlama dili ile faktoriyel hesaplama programı yapmak için döngüleri kullanmamız gerek. Bu döngülerden bir tanesi while diğeri ise for döngüsü. İkisiyle de ayrı ayrı kodlar aşağıda. Tek farkları birinin while döngüsü diğerinin for döngüsü ile yapılmış olması. Ancak ortak olan bir durum var. Eğer dikkat ederseniz her iki program kodlarında da faktoriyel değişkenini 1 sayısına eşitledik. Bunun sebebi çarpmada 1 elemanının etkisiz eleman olmasıdır. 1 yerine 0 değerini atasaydık hesap sonucumuz hep 0 çıkacaktı. Burası dikkat edilmesi gereken bir husus. Aşağıdaki kodları inceleyebilirsiniz.

While döngüsü ile oluşturulmuş program kodu

#include <iostream>

using namespace std;

int main(){
    int sayi;
    long int faktoriyel=1;
    cout << "Faktoriyeli alinacak sayi..:";
    cin >> sayi;
    while(sayi>=1){
                   faktoriyel *= sayi;
                   sayi--;
                   }
                   cout << "Faktoriyel sonucu..:" << faktoriyel << endl;
    system("pause");
    return 0;
    }


For döngüsü ile oluşturulmuş program kodu

#include <iostream>
using namespace std;
int main(){
    int sayi;
    int faktoriyel=1;
 
    cout << "Faktoriyeli alinacak sayi...:";
    cin >> sayi;
 
    for(int i=0;i<sayi;sayi--){
            faktoriyel=faktoriyel*sayi;
         
            }
            cout << "Faktoriyel sonucu...:" << faktoriyel << endl;
            system("pause");
            return 0;
    }