Şimdi Ara

Python e sayısı hesaplama

Bu Konudaki Kullanıcılar:
2 Misafir - 2 Masaüstü
5 sn
10
Cevap
0
Favori
1.362
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba ödevim var. python üzerinden e sayısını 1/n! serisine göre hesaplamam lazım. Ama benim hiç bir fikrim yok bu konuya dair. Acil yardıma ihtiyacım var.



  • import math
    from decimal import *
    getcontext().prec = 2000
    e = Decimal(0)
    i = 0
    while True:
    fact = math.factorial(i)
    e += Decimal(1)/fact
    i += 1
    if fact > 10**2000: break
    print e

    while döngüsünden sonra print e ye kadar boşluk koymayı unutma,pythonda {} yerine indentler(yani boşluklar) döngülerin başını sonunu belirler. Resim ekledim;
    https://store.donanimhaber.com/f7/b3/09/f7b30901b1a708c6708ff3c089245679.png
    python çalışma notlarıma şu siteden ulaşablirsin, her hafta yeni bir ders ekliyorum;http://www.ucbirim.com/python-dersleri-bolum-1-baslangic/
    sorun olursa çekinme,kolay gelsin

     Python e sayısı hesaplama
  • quote:

    Orijinalden alıntı: armagan1992

    import math
    from decimal import *
    getcontext().prec = 2000
    e = Decimal(0)
    i = 0
    while True:
    fact = math.factorial(i)
    e += Decimal(1)/fact
    i += 1
    if fact > 10**2000: break
    print e

    while döngüsünden sonra print e ye kadar boşluk koymayı unutma,pythonda {} yerine indentler(yani boşluklar) döngülerin başını sonunu belirler. Resim ekledim;
    https://store.donanimhaber.com/f7/b3/09/f7b30901b1a708c6708ff3c089245679.png
    python çalışma notlarıma şu siteden ulaşablirsin, her hafta yeni bir ders ekliyorum;http://www.ucbirim.com/python-dersleri-bolum-1-baslangic/
    sorun olursa çekinme,kolay gelsin

     Python e sayısı hesaplama

    Hocam math.factorial kullanarak 5 satır yazdım 11 basamağa kadar doğru hesapladı. Yalnız hoca kabul etmedi. for loop kullan dedi. Onu nasıl yapacağımı düşünüyorum.
  • e = f = 1.0
    for i in range(2, 16):
    e = e + (1.0 / f)
    f = f * i
    print(e)

    şöyle bişey işine yarar mı ? şöyle düşün ilk olarak i = 2 için e = 1 + (1/1) ise e = 2 olacak. f ise 1*2 = 2 yani 2! olacak bu ilk adım sonra i = 3 için (16'ya kadar gidiyor) e = 2 (yeni e bir onceki adımda 2 oldu) + (1/2 (yeni f de 2 oldu)) = 2.5 ve f = 2 * 3 = 6 yani 3! böyle böyle 16! e kadar gidecek size (2,16) da onu anlatıyor. Umarım yardımcı olmuşumdur.
    https://store.donanimhaber.com/16/88/ac/1688ac8790e0bf889f1bd638ee0b1250.png
     Python e sayısı hesaplama
  • quote:

    Orijinalden alıntı: armagan1992

    e = f = 1.0
    for i in range(2, 16):
    e = e + (1.0 / f)
    f = f * i
    print(e)

    şöyle bişey işine yarar mı ? şöyle düşün ilk olarak i = 2 için e = 1 + (1/1) ise e = 2 olacak. f ise 1*2 = 2 yani 2! olacak bu ilk adım sonra i = 3 için (16'ya kadar gidiyor) e = 2 (yeni e bir onceki adımda 2 oldu) + (1/2 (yeni f de 2 oldu)) = 2.5 ve f = 2 * 3 = 6 yani 3! böyle böyle 16! e kadar gidecek size (2,16) da onu anlatıyor. Umarım yardımcı olmuşumdur.
    https://store.donanimhaber.com/16/88/ac/1688ac8790e0bf889f1bd638ee0b1250.png
     Python e sayısı hesaplama

    Evet hocam teşekkür ederim.
  • -Üniversiteli- - kullanıcısına yanıt
    Ne demek, yardımcı olduğuma sevindim
  • quote:

    Orijinalden alıntı: armagan1992

    e = f = 1.0
    for i in range(2, 16):
    e = e + (1.0 / f)
    f = f * i
    print(e)

    şöyle bişey işine yarar mı ? şöyle düşün ilk olarak i = 2 için e = 1 + (1/1) ise e = 2 olacak. f ise 1*2 = 2 yani 2! olacak bu ilk adım sonra i = 3 için (16'ya kadar gidiyor) e = 2 (yeni e bir onceki adımda 2 oldu) + (1/2 (yeni f de 2 oldu)) = 2.5 ve f = 2 * 3 = 6 yani 3! böyle böyle 16! e kadar gidecek size (2,16) da onu anlatıyor. Umarım yardımcı olmuşumdur.
    https://store.donanimhaber.com/16/88/ac/1688ac8790e0bf889f1bd638ee0b1250.png
     Python e sayısı hesaplama

    Hocam bunu yapınca direk e sayısı çıkıyor. Benim 13 kere aynı sayıyı hesaplamam lazım. Yani math factorial kullanınca olduğu gibi. Loop olacak yani.


    import math 

    a=1
    for i in range(1,13):


    a=a+1/math.factorial(i)
    print(a)





    < Bu mesaj bu kişi tarafından değiştirildi -Üniversiteli- -- 5 Kasım 2015; 21:54:17 >
  • print(e) yı for loop un içine sok her adımı yazdirsin sana yanlıs anlamadiysam sorunun çözülmesi lazim

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Merhabalar benimde sınavımın için bir sorum var cevaplayabilir misiniz lütfen?

    Klavyeden girilen bir n değerini esas alarak ilk n adım için e sayısını hesaplayınız.

    n = input ("Bir sayı girin: ")
    def fak (n):
    f=1
    for i in range (1,n+1):
    f=f*i
    return f
    e=1
    for x in range (1,10):
    e+=1/fak(x)
    print ("e:",e)

    bu şekilde bir kod var çıktı veriyor ama verdiği çıktının doğruluğundan emin olamadım.

    Bir sayı girin: 5
    e: 2.0
    e: 2.5
    e: 2.6666666666666665
    e: 2.708333333333333
    e: 2.7166666666666663
    e: 2.7180555555555554
    e: 2.7182539682539684
    e: 2.71827876984127
    e: 2.7182815255731922
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.