问题:生日蜡烛 问题描述: 某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。 现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日party的? 请填写他开始过生日party的年龄数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
题目分析:
我们先设他从x岁开始吹蜡烛,则可以得到等式
x + (x + 1) + (x + 2) + ... + (x + n) = 236
先从1岁开始即
1 + (1 + 1) + (1 + 2) + ... + (1 + n) = 236
2 + (2 + 1) + (2 + 2) + ... + (2 + n) = 236
。。。。。。
这里明显可以知道n也需要进行循环,所以我打算用两个for循环来分别循环x和n
代码如下:
num = 0 # 初始化所吹蜡烛总和
age = 0 # 初始化年龄
for x in range(1, 100): # 对x做循环1-99,一般人的寿命都是99以下把
num = 0 # 初始化所吹蜡烛总和,这里之所以需要初始化是因为下面的for循环对num进行了赋值
for n in range(x, 100):
num = num + n
if num == 236:
age = x
print(age)
for循环嵌套是为了第一次从1岁开始,而第二次从2岁开始。。。