Hướng dẫn how do you find the even divisors of a number in python? - làm thế nào để bạn tìm thấy các ước số chẵn của một số trong python?

Xin chào tất cả mọi người, trong hướng dẫn Python này, chúng tôi sẽ viết một chương trình Python để tìm tổng số các ước số thậm chí của một số. Giả sử chúng ta có một số là 12. Các ước số của nó là 1, 2, 3, 4, 6, 12. Các ước số thậm chí là 2, 4, 6, 12 và tổng của chúng là 24 [2+4+6+12]. Hãy cùng xem các bước chúng ta cần làm theo để viết một chương trình Python để tìm một khoản tiền như vậy.

Tìm tổng số các ước số của một số trong Python

Hãy nói rằng số đầu vào của chúng tôi là N và các yếu tố chính của nó là P1, P2, PK PK. Đặt A1, A2, AK AK là sức mạnh cao nhất của yếu tố chính tương ứng. Bây giờ chúng ta có thể đại diện cho n như dưới đây:

n= p1^a1 * p2^a2 * ....pk^ak

Chúng ta có thể dễ dàng suy ra từ những điều trên rằng tổng của tất cả các ước tính là:

sum of all factors=
[1 + p1 + p1^2 + ...p1^a1] *
[1 + p2 + p2^2 + ...p2^a2] *
.......................... *
[1 + pk + pk^2 + ...pk^ak]

Nếu số này là lẻ, sẽ không có các ước. Do đó tổng số sẽ bằng không. Nếu số có 2 là một trong các yếu tố chính của nó, thì tổng có thể được viết là:

sum of all factors= 
[1 + 2 + 2^2 + ...2^a1] * 
[1 + p2 + p2^2 + ...p2^a2] * 
.......................... * 
[1 + pk + pk^2 + ...pk^ak]

Bây giờ để tìm ra tổng số các giao diện thậm chí, chúng ta chỉ cần bao gồm các trường hợp khi có 2 trong yếu tố. Do đó, chúng tôi loại trừ 1 [2^0] từ trên từ thứ hai và tổng trở thành:

sum of even factors= 
[2 + 2^2 + ...2^a1] * 
[1 + p2 + p2^2 + ...p2^a2] * 
.......................... * 
[1 + pk + pk^2 + ...pk^ak]

Hãy để hiểu về phương trình trên với một ví dụ.

Hãy nói rằng chúng tôi có n = 12.

Các yếu tố chính của n là 2, 3 và chúng ta có thể đại diện cho nó là 2^2 * 3^1.

Bây giờ tổng của các ước số thậm chí là [2 + 2^2] [1 + 3] = 24.

Chúng ta có thể sử dụng thuộc tính của tiến trình hình học để tìm tổng [1 + p + p^2 + p^a] và [2 + 2^2 +, 2^a].

1 + p + p^2 + ...p^a = 1 [p^[a+1] - 1]/[p - 1] = [p^[a+1] - 1]/[p - 1]

Bây giờ chúng tôi sẽ thực hiện nó với một chương trình ví dụ trong Python. Xem mã.

def EvenDivisorsSum[n]:
    
    if n%2 != 0:
        return 0
    if n == 2:
        return 2
    result = 1
    lim = n
    for i in range[2, lim]:
        a = 0
        sum_i = 0
        while[n % i == 0]:
            n = n // i
            a = a + 1
        sum_i = [i**[a+1]-1]/[i-1]
        if[i==2]:
            sum_i = sum_i - 1
        result = result * sum_i
    return result
    
        
        
print[EvenDivisorsSum[30]]

Đầu ra của mã trên là:

48.0

Cảm ơn bạn.

Ngoài ra, đọc: & nbsp; tổng của tất cả các yếu tố của một số trong Python

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:48 [UTC/GMT +8 giờ]

Python Basic - 1: Bài tập -24 với giải pháp

Viết một chương trình Python để tìm số lượng chia của một số nguyên nhất định là chẵn hoặc kỳ lạ.

Giải pháp mẫu::

Mã Python:

def divisor[n]:
  x = len[[i for i in range[1,n+1] if not n % i]]
  return x
print[divisor[15]]
print[divisor[12]]
print[divisor[9]]
print[divisor[6]]
print[divisor[3]]

Đầu ra mẫu:

4
6
3
4
2

Trình bày bằng hình ảnh:

Flowchart:


Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Trình chỉnh sửa mã Python:

Có một cách khác để giải quyết giải pháp này? Đóng góp mã của bạn [và nhận xét] thông qua Disqus.

Trước đây: Viết một chương trình Python chấp nhận một số dương và trừ vào số này tổng số các chữ số của nó, v.v. Tiếp tục hoạt động này cho đến khi số dương. Write a Python program that accept a positive number and subtract from this number the sum of its digits and so on. Continues this operation until the number is positive.
Next: Write a Python program to find the digits which are absent in a given mobile number.

Mức độ khó của bài tập này là gì?

Kiểm tra kỹ năng lập trình của bạn với bài kiểm tra của W3Resource.

Python: Lời khuyên trong ngày

Ghi nhớ bằng cách sử dụng bộ đệm LRU:

import functools

@functools.lru_cache[maxsize=128]
def fibonacci[n]:
    if n == 0:
        return 0
    elif n == 1:
        return 1
    return fibonacci[n - 1] + fibonacci[n - 2]

  • Bài tập: Top 16 chủ đề phổ biến nhất hàng tuần
  • Bài tập SQL, Thực hành, Giải pháp - Tham gia
  • Bài tập SQL, Thực hành, Giải pháp - Quan sát phụ
  • JavaScript Basic - Bài tập, Thực hành, Giải pháp
  • Java Array: Bài tập, Thực hành, Giải pháp
  • C Bài tập lập trình, Thực hành, Giải pháp: Tuyên bố có điều kiện
  • Cơ sở dữ liệu nhân sự - Sắp xếp bộ lọc: Bài tập, Thực hành, Giải pháp
  • C Bài tập lập trình, Thực hành, Giải pháp: Chuỗi
  • Các loại dữ liệu Python: Từ điển - Bài tập, Thực hành, Giải pháp
  • Câu đố lập trình Python - Bài tập, Thực hành, Giải pháp
  • Mảng C ++: Bài tập, Thực hành, Giải pháp
  • Báo cáo và vòng lặp có điều kiện JavaScript - Bài tập, Thực hành, Giải pháp
  • Thuật toán cơ bản C# Sharp: Bài tập, Thực hành, Giải pháp
  • Python Lambda - Bài tập, Thực hành, Giải pháp
  • Python Pandas DataFrame: Bài tập, Thực hành, Giải pháp
  • Công cụ chuyển đổi
  • JavaScript: HTML Mẫu xác thực

Những con số nào có số lượng phân chia thậm chí?

Số lượng ước số của 6 là chẵn [{1,2,3,6}]. Số lượng ước số 8 là chẵn [{1,2,4,8}]. Số lượng ước số 9 là kỳ lạ. Số lượng ước số 10,12,14,15 là chẵn.10,12,14,15 is even.

Một số thậm chí có thể có ước số lẻ?

Không, nó không thể.Tổng số các ước số [và do đó số lượng các giao hàng thậm chí] phải là bội số của số lượng các ước số lẻ.Ví dụ, nói rằng số của chúng tôi chia hết cho 4 nhưng không phải 8.. The total number of divisors [and therefore the number of even divisors] must be a multiple of the number of odd divisors. Say, for instance, that our number is divisible by 4 but not 8.

Bài Viết Liên Quan

Chủ Đề