ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีการแก้ไขปัญหาที่ระบุด้านล่าง -
คำชี้แจงปัญหา
เมื่อป้อนตัวเลข n ภารกิจคือค้นหาผลรวมของตัวประกอบคู่ของตัวเลข
ในที่นี้เราต้องกำจัดปัจจัยแปลก ๆ ทั้งหมดก่อน
หากการป้อนตัวเลขเป็นเลขคี่ จะไม่มีตัวประกอบเป็นคู่เพื่อคืนค่าศูนย์โดยตรง มิฉะนั้น เราจะปฏิบัติตามแนวทางในโค้ดด้านล่าง
ด้านล่างนี้คือการดำเนินการ −
ตัวอย่าง
import math # Returns sum of all even factors of n. def sumofFactors(n) : # If n is odd if (n % 2 != 0) : return 0 #all prime factors res = 1 for i in range(2, (int)(math.sqrt(n)) + 1) : count = 0 curr_sum = 1 curr_term = 1 while (n % i == 0) : count= count + 1 n = n // i # here we remove the 2^0 that is 1. All other factors if (i == 2 and count == 1) : curr_sum = 0 curr_term = curr_term * i curr_sum = curr_sum + curr_term res = res * curr_sum # if n is prime number if (n >= 2) : res = res * (1 + n) return res # main n = 20 print(sumofFactors(n))
ผลลัพธ์
36
ตัวแปรทั้งหมดถูกประกาศในกรอบสากลดังแสดงในรูปด้านล่าง -
บทสรุป
ในบทความนี้ เราได้เรียนรู้เกี่ยวกับวิธีการหาผลรวมของตัวประกอบคู่ของตัวเลข