98付涛 发表于 2016-11-16 17:40:46

python3求助

如何在python3求得第n项斐波那契树!!

98付涛 发表于 2016-11-17 22:28:51

a = 1
b = 1
i = int(input())
while i - 2:
    c = a + b
    a = b
    b = c
    i = i - 1
print(b)

冬雪雪冬 发表于 2016-11-18 11:21:07

你的程序输入1试试。

98付涛 发表于 2016-11-18 14:33:27

冬雪雪冬 发表于 2016-11-18 11:21
你的程序输入1试试。

我知道, 但是显而易见第一项和第二项都是一,完了,最后的应该是print(c),我打错了,不好意思!!

冬雪雪冬 发表于 2016-11-18 15:12:52

98付涛 发表于 2016-11-18 14:33
我知道, 但是显而易见第一项和第二项都是一,完了,最后的应该是print(c),我打错了,不好意思!!

不是这个问题,当i=1时,while i-2,为True。循环进行,再i-1 为-2循环仍继续,这就成为无限循环了。

98付涛 发表于 2016-11-18 15:19:23

冬雪雪冬 发表于 2016-11-18 15:12
不是这个问题,当i=1时,while i-2,为True。循环进行,再i-1 为-2循环仍继续,这就成为无限循环了。

把i - 2改成i - 2 > 0就行,多谢,我想问个问题为什么输入2以上的数会跳出循环?

冬雪雪冬 发表于 2016-11-18 15:26:04

98付涛 发表于 2016-11-18 15:19
把i - 2改成i - 2 > 0就行,多谢,我想问个问题为什么输入2以上的数会跳出循环?

输入2以上,当循环中逐步减一直至i为0时,就是一个False了,即while i:相当于while i != 0:

98付涛 发表于 2016-11-18 15:30:25

冬雪雪冬 发表于 2016-11-18 15:26
输入2以上,当循环中逐步减一直至i为0时,就是一个False了,即while i:相当于while i != 0:

知道了,理解了!谢谢{:10_297:}我初学编程,多多包涵

冬雪雪冬 发表于 2016-11-18 15:33:41

98付涛 发表于 2016-11-18 15:30
知道了,理解了!谢谢我初学编程,多多包涵

相互学习,共同提高。

98付涛 发表于 2016-11-18 15:48:41

冬雪雪冬 发表于 2016-11-18 15:33
相互学习,共同提高。

刚刚遇到一个问题,while后面不能什么都不加?但是如果我要一直循环只能像while 1 > 0:这种方法吗?还有一个问题每次run只能输入一次,怎样解决这个问题

98付涛 发表于 2016-11-18 15:51:46

98付涛 发表于 2016-11-18 15:48
刚刚遇到一个问题,while后面不能什么都不加?但是如果我要一直循环只能像while 1 > 0:这种方法吗?还有 ...

哎呀,我解决了一直运行的问题!!不好意思了,下次问问题之前我得多想想,就在在前面加个循环就行

98付涛 发表于 2016-11-18 15:56:16

冬雪雪冬 发表于 2016-11-18 15:33
相互学习,共同提高。

z终止程序的快捷键是什么来着?不是Ctrl + Q那个

冬雪雪冬 发表于 2016-11-18 15:59:46

Ctrl+C就可以。
页: [1]
查看完整版本: python3求助