สมมติว่าเรามีตัวเลข n เราต้องตรวจสอบว่าจำนวน n เป็นกำลังสองสมบูรณ์หรือไม่ กล่าวได้ว่าตัวเลขเป็นจำนวนเต็มกำลังสองเมื่อรากที่สองเป็นจำนวนเต็ม
ดังนั้น หากอินพุตเท่ากับ n =36 ผลลัพธ์จะเป็น True เท่ากับ 36 =6*6
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- sq_root :=ส่วนจำนวนเต็มของ (รากที่สองของ n)
- คืนค่า จริง เมื่อ sq_root^2 เหมือนกับ n มิฉะนั้น เท็จ
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
from math import sqrt def solve(n): sq_root = int(sqrt(n)) return (sq_root*sq_root) == n n = 36 print (solve(n))
อินพุต
36
ผลลัพธ์
True