2026-03-24,提交
三道作業(yè)題目:
1. 計(jì)算 12 + 22 + 32 + … + n2 輸入 n,計(jì)算前 n 個(gè)正整數(shù)的平方和。
2. 求滿足條件的數(shù) 輸出 100~999 之間所有個(gè)位數(shù)大于十位數(shù)、且十位數(shù)大于百位數(shù)的遞增數(shù)。(如 123、135、246 等)
3. 雞兔同籠 輸入頭數(shù) h 和腳數(shù) f,窮舉法求出雞和兔各多少只。如果無解則輸出"無解"。
"""
1. 計(jì)算 12 + 22 + 32 + … + n2** 輸入 n,計(jì)算前 n 個(gè)正整數(shù)的平方和
"""
n = int(input("請輸入正整數(shù)n:"))
sum=0
for i in range(1,n+1):
sum+=i*i
print(f"前 n 個(gè)正整數(shù)的平方和:{sum}")
運(yùn)行結(jié)果

image.png
"""
2. 求滿足條件的數(shù)
輸出 100~999 之間所有個(gè)位數(shù)大于十位數(shù)、且十位數(shù)大于百位數(shù)的遞增數(shù)。
(如 123、135、246 等)
"""
for i in range(100,1000):
if (i%10 > i%100//10) and (i%100//10 > i//100) :
print(f"遞增數(shù)有:{i}")
運(yùn)行結(jié)果

image.png
"""
3. 雞兔同籠
輸入頭數(shù) h 和腳數(shù) f,窮舉法求出雞和兔各多少只。
如果無解則輸出"無解"。
"""
h=int(input("輸入頭數(shù):"))
f=int(input("輸入腳數(shù):"))
"""
我從頭數(shù)來入手,以雞頭為中心來破解,假設(shè)雞i頭,那么兔h-i頭.
可以知道,雞頭數(shù)量的范圍是0~h
"""
# 雞頭i
# 采用標(biāo)記法,讓無解的情況,有個(gè)狀態(tài)我可以判斷輸出
found = False
for i in range(0, h + 1): # i 為雞的數(shù)量
j = h - i # j 為兔的數(shù)量
if 2 * i + 4 * j == f: # 直接判斷腳數(shù)是否匹配
print(f"雞有:{i}只,兔有:{j}只")
found = True
break
if not found:
print("無解")
運(yùn)行結(jié)果

image.png