3. 开始制作第一步:打印题目
print("两根同样长的铁丝,第一根剪去18厘米,第二根剪去26厘米," #题目太长用“”换行
"余下的铁丝第一根是第二根的3倍。原来两根铁丝各长多少厘米?\n") #和答题的时候空一行第二步:制作判断条件
for number in range(100): #这里我判断答案不会超过100,当然也可以设置1000等等。
if number > 26 and (number-18)/(number-26) == 3: #满足答案的两个条件,一是要大于26,二是余下的第一根是第二根的3倍。第三步:输入答案
print("两根同样长的铁丝,第一根剪去18厘米,第二根剪去26厘米,"
"余下的铁丝第一根是第二根的3倍。原来两根铁丝各长多少厘米?\n")
for number in range(100):
if number > 26 and (number-18)/(number-26) == 3:
print("答案:原来两根铁丝各长",number,"厘米。")
不愧是教奥数的,楼主做事很认真,在所学有限的情况下就能编写出一套合乎逻辑的程序
关于求某个数其实有个特定编程算法,就是SUM=0,然后按照“”SUM=SUM 算数符号 数字“依次运算,因为设定上限这种事在数字过大之后就变得很难了,用你的思路换while的话可以这样写:
sum = 0
while True: #永远循环下去,除非遇见break跳出
if sum>26 and (sum-18)/(sum-26) == 3:
print(sum)
break #一旦算出结果则跳出循环,不再继续运算浪费内存
sum+=1
没用?不会没用啊
sum只是个变量名,高亮可能是你软件自定义高亮了,函数的调用是函数名加括号
至于为什么要加后面,其实无所谓,但是这是一种逻辑,既然你说是必定大于26的整数,那肯定就是27开始嘛,假如我优化一下刚才的代码,节约点计算内存,变成:
sum = 27
while True:
if (sum-18)/(sum-26) == 3:
print(sum)
break
sum+=1