Merhaba, bugün ki yazımda sizlere python ve c ile faktöriyel almayı göstereceğim.
Öncelikle faktöriyelin
ne olduğunu kısaca açıklayalım:
Faktöriyel, pozitif bir tamsayının kendisinden önceki bütün
tamsayılarla 1'e inilinceye kadar çarpılması sonucunda elde edilen çarpımdır. n
sayısının faktöriyeli, n! şeklinde gösterilir.
Örneğin;
5 sayısının faktöriyeli 5.4.3.2.1= 120 olarak hesaplanır.
C:
//Created by Furkan Taha ÖNDER on 04.12.2016.
#include <iostream>
int main(){
double sayi, sonuc=1;
printf("Faktoriyelini almak istediginiz sayiyi giriniz: ");
scanf("%lf", &sayi);
if(sayi==0){
printf("%.0lf!= %.0lf",sayi, sonuc);
}
if(sayi > 0){
for(int i=1;i<=sayi;i++){
// for ile bir döngü oluşturduk.int veri tipinde i değiskeni oluşturup, 1'e eşitliyoruz.
// i değiskeni, sayi değişkenine eşit ya da buyuk olmasına kadar döngü tekrar edecek.
//i değişkeni döngünün her tekrarında arttırılacak.
sonuc = sonuc*i; // sonuc degiskenini, i değiskeni ile çarpıp, oluşan degeri sonuç değerine eşitliyoruz.
}
printf("%.0lf!= %.0lf",sayi, sonuc);
}
if(sayi<0 0="" degerlerin="" egatif="" fakt="" hesaplanamaz.="" pre="" printf="" return="" riyeli="">
Python:
#Created by Furkan Taha ÖNDER on 4.12.2016.
#Copyright © 2016 Furkan Taha ÖNDER. All rights reserved.
sayı = int(input('Faktöriyelini almak istediğiniz sayıyı giriniz : '))
#int tipinde sayı değişkeni oluşturuyoruz.
#Ve girilen sayıyı, sayı değişkenine eşitliyoruz.
faktöriyel = 1
#faktöriyel değişkenini 1'e eşitliyoruz.
if sayı < 0:
print("Negatif sayiların faktöriyeli hesaplanamaz.")
elif sayı == 0:
print("0 sayısının faköriyeli 1 sayısına eşittir.")
else:
for i in range(sayı):
#Bir döngü oluşturuyoruz..
#range(sayı) ile girdiğimiz sayı kadar döngünün tekrar etmesini sağlıyoruz..
faktöriyel = faktöriyel *(1+i)
# i değişkenini 1 ile topluyoruz ve faktöriyel değişkeni ile çarpıyoruz.
#Ve oluşan değeri faktöriyel değişkenine eşitliyoruz.
print(sayı,"sayısının faktöriyeli",faktöriyel,"sayısına eşittir.")
Kodlarda anlamadığınız yerleri yorum olarak yazarsanız, yardımcı olabilirim.
İyi Çalışmalar.
0>