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

GCD ที่มีตัวเลข (หรืออาร์เรย์) มากกว่าสองหมายเลขในโปรแกรม Python


ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีการแก้ไขปัญหาที่ระบุด้านล่าง -

คำชี้แจงปัญหา

เราจะได้รับอาร์เรย์ของตัวเลขและเราต้องหาตัวหารร่วมมากที่มากที่สุด

หากเราจำเป็นต้องหา gcd ของตัวเลขมากกว่าสองตัว gcd จะเท่ากับผลคูณของตัวประกอบเฉพาะร่วมของตัวเลขทั้งหมดที่ระบุเป็นอาร์กิวเมนต์ นอกจากนี้ยังสามารถคำนวณได้โดยการนำ GCD ของจำนวนอาร์กิวเมนต์มาเป็นคู่ซ้ำๆ

เราจะดำเนินการตามแนวทางหลัง

ทีนี้มาดูการใช้งานกัน

ตัวอย่าง

def findgcd(x, y):
   while(y):
      x, y = y, x % y
   return x
l = [22, 44, 66, 88, 99]
num1 = l[0]
num2 = l[1]
gcd = findgcd(num1,num2)
for i in range(2,len(l)):
   gcd = findgcd(gcd,l[i])
print("gcd is: ",gcd)

ผลลัพธ์

Gcd is: 11

ตัวแปรและฟังก์ชันทั้งหมดได้รับการประกาศในขอบเขตสากลดังแสดงในภาพด้านล่าง -

GCD ที่มีตัวเลข (หรืออาร์เรย์) มากกว่าสองหมายเลขในโปรแกรม Python

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีหาตัวหารร่วมมากของอาร์เรย์อาร์กิวเมนต์ที่กำหนด