Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมค้นหาตัวเลขซุปเปอร์หลักของตัวเลขใน Python


สมมติว่าเรามีตัวเลข n เราต้องหาเลขซุปเปอร์หลักของเลขนี้ เลขซุปเปอร์หลักของตัวเลขหลักเดียวคือตัวเลขหลัก แต่สำหรับตัวเลขหลายหลัก super หลักคือผลรวมของตัวเลขทั้งหมดซ้ำๆ กันจนกว่าผลรวมจะเป็นตัวเลขหลักเดียว

ดังนั้น หากอินพุตเป็น n =513682 ผลลัพธ์จะเป็น 7 เพราะ (5+1+3+6+8+2) =25 (2 + 5) =7

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • s :=0
  • ในขณะที่ n> 0 หรือ s> 9 ทำ
    • ถ้า n เหมือนกับ 0 แล้ว
      • n :=s
      • s :=0
    • s :=s + n mod 10
    • n :=ค่าพื้น n/10
  • คืนสินค้า

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

def solve(n):
   s = 0
   while(n > 0 or s > 9):
      if n == 0:
         n = s
         s = 0

      s += n % 10
      n //= 10

   return s

n = 513682
print(solve(n))

อินพุต

513682

ผลลัพธ์

7