Tổng các thừa số của một số trong python

Giới thiệu

Nhiệm vụ là tìm tổng các thừa số nhỏ nhất của một số đã cho

Program to find the minimum sum of factors of given number using Python

def find(ip_no):
# Initilize sum with 0
    output_sum = 0
    fact = 2
    while(fact * fact <= ip_no):
        while(ip_no % fact == 0):
            output_sum += fact
            ip_no /= fact
        fact += 1
    output_sum += ip_no
    print("The minimum sum of factors of given number is {0}".format(output_sum) )
ip_no = int(input("Enter the number: "))
find(ip_no)

đầu ra

Program to find the minimum sum of factors of given number using Python Output

Giải trình

Tiếp cận

  • Tìm các thừa số của số đã cho
  • Thêm các yếu tố và lưu trữ giá trị trong biến tổng
  • Lặp lại các bước cho tất cả các yếu tố của số đã cho
  • Trả về số tiền tối thiểu

Thừa số là những số chia hết cho số đã cho để dư 0 hay có thể nói thừa số là bội của số đó

Ví dụ 1 - Nếu chúng ta được cho một số 60

Thừa số của 60 (6*10=2*3*2*5) là 2, 5 và 3

Nhưng theo đề bài ta phải tìm tổng của các thừa số chẵn nên ở ví dụ trên thừa số chẵn sẽ chỉ là 2

Ngoài ra, nếu số đã cho là số lẻ thì thừa số sẽ không phải là số chẵn

Ví dụ 2−55 là số đã cho

Thừa số của nó là 5 và 11 ta thấy cả 2 thừa số đều không chẵn nên số lẻ sẽ không có thừa số chẵn

Bây giờ chúng ta đã biết python là một ngôn ngữ nâng cao do đó nó có các mô-đun được thiết kế cho mục đích giải các hàm toán học và vì câu hỏi của chúng tôi là xử lý một bài toán nên chúng tôi phải nhập và thêm các mô-đun đó vào mã của mình

Vì vậy, trước khi viết mã của chúng tôi, hãy xem những khái niệm nào chúng tôi có thể áp dụng trong mã của mình theo câu hỏi được đưa ra cho chúng tôi. Phương pháp này sẽ giúp chúng tôi tìm ra chức năng phù hợp nhất và cải thiện cách tiếp cận của chúng tôi đối với câu hỏi

Cách tiếp cận của chúng ta nên là gì và tại sao?

Vì câu hỏi của chúng tôi hoàn toàn dựa trên các công cụ toán học nên cách tiếp cận đầu tiên của chúng tôi là tìm ra các công cụ như vậy sẽ giúp chúng tôi hoàn thành mã. Vì vậy, chúng tôi sẽ nhập mô-đun toán học cho phép chúng tôi sử dụng các chức năng

Nếu một người tiếp tục nghi ngờ về điều gì sẽ xảy ra nếu số đó là số lẻ thì chúng ta sẽ làm gì để giải quyết vấn đề này, cách tiếp cận tiếp theo của chúng ta là suy nghĩ về một tuyên bố sẽ giúp chúng ta đưa ra lựa chọn hoặc chúng ta có thể nói, đưa ra quyết định cho chúng ta và . Bây giờ hãy viết chương trình của chúng ta

TÌM TỔNG CÁC YẾU TỐ CHẲNG CỦA MỘT SỐ

Ví dụ

import math def sum_EF(N) : if (N % 2 != 0) : return 0 ut = 1 for i in range(2, (int)(math.sqrt(N)) + 1) : num = 0 sum_n = 1 num_t = 1 while (N % i == 0) : num= num + 1 N = N // i if (i == 2and num == 1) : sum_n = 0 num_t = num_t * i sum_n = sum_n + num_t ut = ut * sum_n if (N >= 2) : ut = ut * (1 + N) return ut N = 40 print(sum_EF(N))

đầu ra

None

Vì chúng tôi đã viết mã cho câu hỏi của mình, hãy hiểu một số điểm chính ngay từ đầu. Điều đầu tiên mà chúng tôi đã thêm vào mã của mình là chúng tôi đã nhập mô-đun MATH

Sau đó, điều quan trọng tiếp theo là tìm hiểu xem số được hỏi là số lẻ hay số chẵn. Vì chúng tôi biết máy tính không phải là một hệ thống thông minh nên chúng tôi phải hướng dẫn nó, đó là lý do tại sao trước tiên chúng tôi viết mã để kiểm tra số đó là số lẻ hay số chẵn

Ví dụ −

if (N % 2 != 0) :
return 0

Ở đây chúng tôi đã sử dụng câu lệnh IF – để kiểm tra vì vậy nếu số là số lẻ, nó sẽ trả về mã bằng 0 nếu không thì tiếp tục

Bây giờ, hãy tiếp tục với mã, giả sử chúng ta sẽ nhập một số chẵn, bây giờ công việc của chúng ta sẽ là kiểm tra các thừa số của số đã nhập bắt đầu từ 1

Bây giờ để kiểm tra các yếu tố, chúng tôi đã tạo một phạm vi và như bạn có thể thấy, chúng tôi đã viết toán. câu hỏi. đây là một hàm có sẵn trong python giúp chúng ta trả về căn bậc hai của một số

Ví dụ −

for i in range(2, (int)(math.sqrt(N)) + 1)

Tiếp theo là loại bỏ các số nguyên tố (các số chỉ chia hết cho chính chúng, ví dụ 1,3,5,7, v.v.) khỏi các thừa số của số vì tất cả các số lẻ không phải là số nguyên tố, nhưng tất cả các số nguyên tố đều là số lẻ

Ví dụ −

if (N >= 2) :
ut = ut * (1 + N)

Return nó được sử dụng khi sẽ có một số nguyên tố

Tiếp theo, chúng tôi đã sử dụng−

if (i == 2 and num == 1) :
      num_sm = 0
   num_tm = num_tm * i
   num_sm = num_sm + num_tm
ut = ut * num_sm

để xóa giá trị 20 mang lại giá trị 1

N=N//i − // là hàm chia sàn được sử dụng để loại bỏ các số nguyên khỏi đầu ra mà chúng ta có thể nhận được trong quá trình giải bài toán

Cuối cùng, chúng tôi đã đưa ra một giá trị trong mã với mục đích tìm ra tổng của các thừa số chẵn

Công thức tính tổng các thừa số là gì?

Bạn có thể tính tổng các biến trong Python không?

Giờ đây, bạn có thể sử dụng hàm sum() tích hợp sẵn của Python để cộng nhiều giá trị số lại với nhau . Hàm này cung cấp một cách hiệu quả, dễ đọc và Pythonic để giải quyết các vấn đề tổng kết trong mã của bạn.

Tổng các thừa số của 50 là bao nhiêu?

Tổng các thừa số của 50 là bao nhiêu? . Do đó, tổng là 93 .