ALGORİTMA SORU ÇÖZÜMÜ 4 [PYTHON] //Ar-Ge Kulübü

AngelRayt

Uzman üye
13 Eki 2015
1,352
15
Python
Ders :4 Faktoriyel Hesaplama

Kod:
print("\t\t\tFaktöriyel Hesaplama")
sayi = int(input("Sayı : "))
sonuc = 1
while sayi>=1:
    sonuc=sonuc*sayi
    sayi-=1
print("Sonuç : ",sonuc)



Kod:
sayi = int(input("Sayı : "))        /Kullanıcıdan sayi girdisi alıp integer a çevirdik
sonuc = 1                              /Sonuc adında değişken oluşturduk


Kod:
while sayi>=1:                            /Sayı 1 e eşit ve büyük olana kadar devam et
    sonuc=sonuc*sayi                   /sonucu sonuc * sayıya eşitle
    sayi-=1                                  /sayıyı 1 azalat
print("Sonuç : ",sonuc)                /Ekrana bastır.






AA2XR8.png

 
Son düzenleme:

kondanta

Katılımcı Üye
29 Tem 2017
910
0
CNCF
Kod:
>>> inp = int(input())
5
>>> fact = lambda n: [1,0][n>1] or fact(n-1)*n
>>> print(fact(inp))
120
>>>

daha tatli degil mi ?
 

BufGix

Uzman üye
7 Ağu 2015
1,089
2
Phobos/Space
Kod:
>>> inp = int(input())
5
>>> fact = lambda n: [1,0][n>1] or fact(n-1)*n
>>> print(fact(inp))
120
>>>

daha tatli degil mi ?

Cok daha tatli ama buyuk degerde stack boyutunu aşıyor :)




Edit: Pythonda stack boyutunu ayarlalanabiliyormus. Ama performans acisindan onerilmezmiş:
Kod:
sys.setrecursionlimit(15000)

 
Son düzenleme:

R3DBULL

Katılımcı Üye
6 Nis 2016
612
0
Kod:
import math

while True:
	sayı = int(input(" Hesapla : "))
	if (sayı <= 0):
		print("-" * 40)
		print(" Hatalı sayı girdiniz!")
		print("-" * 40)
	else:
		print("-" * 40)
		print(" Sayının faktöriyeli:",math.factorial(sayı))
		print("-" * 40)
		break

bu daha tatlı değil mi? :woott
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.