a059: 完全平方和
這篇教學會示範 ZeroJudge 基礎題庫「a059: 完全平方和」的解題過程。
題目需求
題目會給予 a 到 b 兩個整數,透過程式找出 a 與 b 之間所有完全平方數的和,例如範圍 3 和 25 中所有完全平方數的和就是 4 + 9 + 16 + 25 = 54。
題目連結:a059: 完全平方和
解答
使用 for 迴圈與 range 搭配,依序取出範圍內所有的數字,將取出的數字開根號後乘以 100,再透過除以 100 的餘數,就能判斷這個數字是否為完全平方數 ( 如果不是完全平方數,開根號後乘以 100 再除以 100 就會出現餘數 )
n = int(input()) # 按照題目先輸入一組數字
for i in range(n):
a = int(input()) # 輸入第一個數字
b = int(input()) # 輸入第二個數字
result = [] # 記錄完全平方數的串列
for j in range(a, b+1): # 取出範圍內所有數字
j2 = j**0.5 * 100 # 開根號後乘以 100
if j2%100==0: # 如果除以 100 後沒有餘數
result.append(j) # 表示為完全平方數,記錄到 result 裡
print(f'Case {i+1}: {sum(result)}')
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~