那个temp//=10是什么意思呢?还请大家解惑,非常感谢
就求水仙花数的那个题for i in range(100,1000):
sum=0
temp=i
while temp:
sum=sum+(temp%10)**3
temp//=10
if sum==i:
print(i)
temp=temp//10 // 这是地板除的意思
地板除,与普通除的区别是,其结果是整型数,而后者是浮点数。 jackz007 发表于 2019-11-16 12:01
地板除,与普通除的区别是,其结果是整型数,而后者是浮点数。
注意,无论是整数还是浮点数都会执行地板除法 temp //= 10 就是 temp = temp // 10
// 是地板除的符号。地板除返回一个数除以另一个数的商(整数)。例如 7 // 2 = 3,9 // 4 = 2。 有大佬可以讲下这个程序吗?不知道为啥呢 确实 没搞懂这个程序
for i in range(100, 1000):
sum = 0
temp = i
while temp:
sum = sum + (temp%10) ** 3
temp //= 10 # 注意这里要使用地板除哦~
if sum == i:
print(i)
这段程序是什么意思我看不懂,但是输出的结果是对的。
print('100到1000之间所有的水仙花数:')
a = 0
for i in range(100,1000):
x = i//100 #取百位数
y = i//10%10 #取十位数
z = i%10 #取个位数
if x ** 3 + y**3 + z**3 ==i:
print('%d是水仙花数' %i)
a += 1
print('一共有%d个水仙花数' %a)
我花了半小时才知道怎么把百位数和十位数分出来,这对初学者不友好,自己写的虽然冗杂,但至少能明白是什么意思 你这思路是正常的
页:
[1]