içinde devam eden kesir ilk n + 1 terimlerini kullanarak 'e' için bir yaklaşım bulma wiki içinde [a1, a2, a3...]
devam eden kesir örneğini takip etmeye çalıştım. Ben Programı çalıştırdığınızda ben 2.727272...75
olarak n = 2
için sonucu elde etmek mümkün ama ben orada iki çıkışları ve onlar düşüktür n = 3
çalıştığınızda (2.394
ve ikinci çizgi 2.3333
... alma) Ben eklemem gerekiyor emin değilim y =...
satırına başka bir ayar. n
'u her değiştirdiğimde i -1+
'un başka bir grubunu y
'a eklemek zorunda mıyım? Ve neden iki satırlık cevap alıyorum? Döngüyü nasıl yaptığım sorun mu var? wikipedia's article on the subject itibarenpython
n = abs(int(input("Enter number: ")))
y = 0
d = 0
for i in range(n, 1, -1):
if i == n:
y = (i - 1) + ((i - 1)/((i-1)/(i + (i/(i + 1))))
d = d + y
else:
d = i + 1
e = 2 + (1/d)
print (e)
ekleyiniz İşte
kod bu Sorunuzdaki metni (metin olarak değil) bir görüntü veya bir bağlantı olarak. Kod biçimlendirmesini vurgulayarak ve editördeki '{}' düğmesini tıklatarak alabilirsiniz (veya her şeyi kendiniz ekstra dört boşlukla girebilirsiniz). – BlckknghtBirincisinden sonra herhangi bir 'i' için asla 'y' kullanmazsınız. Tek yapmanız gereken, "i" yi (önceki değerini göz ardı ederek) "d" yi hesaplamak ve daha sonra "e" yi "d" 'den hesaplamaktır. Uygulamaya çalıştığınız kesimin devam ettiğinden emin olduğumdan emin değilim, bu yüzden gerçekten bir düzeltme öneremiyorum. – Blckknght
Oh, belki de 'if' durumunun mantığı geriye doğru mu? İkinci ve tüm iterasyonlar için 'if 'bloğunun kodunu ve yalnızca ilk iterasyon için' else'i kullanmak ister misiniz? Eğer öyleyse, 'i == n' yerine' i! = N' kullanın. – Blckknght