Thừa số nguyên to python

Đề bài

Bài tập Python: Viết chương trình phân tích số nguyên n thành các thừa số nguyên tố trong Python. Ví dụ: 100 = 2x2x5x5. Số nguyên dương n được nhập từ bàn phím.


Lời giải

"""
 * Phân tích số nguyên thành tích các thừa số nguyên tố
 *
 * @param positiveInt
 * @return
"""
def phanTichSoNguyen[n]:
    i = 2;
    listNumbers = [];
    # phân tích
    while [n > 1]:
        if [n % i == 0]:
            n = int[n / i];
            listNumbers.append[i];
        else:
            i = i + 1;
    # nếu listNumbers trống thì add n vào listNumbers
    if [len[listNumbers] == 0]:
        listNumbers.append[n];
    return listNumbers;

n = int[input["Nhập số nguyên dương n = "]];
# phân tích số nguyên dương n
listNumbers = phanTichSoNguyen[n];
size = len[listNumbers];
sb = "";
for i in range[0, size - 1]:
    sb = sb + str[listNumbers[i]] + " x ";
sb = sb + str[listNumbers[size-1]];
# in kết quả ra màn hình
print["Kết quả:", n, "=", sb];

Kết quả:

Nhập số nguyên dương n = 100
Kết quả: 100 = 2 x 2 x 5 x 5

Đề bài

Viết chương trình C phân tích số nguyên n thành các thừa số nguyên tố. Ví dụ: 12 = 2 x 2 x 3.

100 = 2x2x5x5

Lời giải

"""
 * Phân tích số nguyên thành tích các thừa số nguyên tố
 *
 * @param positiveInt
 * @return
"""
def phanTichSoNguyen[n]:
    i = 2;
    listNumbers = [];
    # phân tích
    while [n > 1]:
        if [n % i == 0]:
            n = int[n / i];
            listNumbers.append[i];
        else:
            i = i + 1;
    # nếu listNumbers trống thì add n vào listNumbers
    if [len[listNumbers] == 0]:
        listNumbers.append[n];
    return listNumbers;
 
n = int[input["Nhập số nguyên dương n = "]];
# phân tích số nguyên dương n
listNumbers = phanTichSoNguyen[n];
size = len[listNumbers];
sb = "";
for i in range[0, size - 1]:
    sb = sb + str[listNumbers[i]] + " x ";
sb = sb + str[listNumbers[size-1]];
# in kết quả ra màn hình
print["Kết quả:", n, "=", sb];

Kết quả:

Nhập số nguyên dương n = 100
Kết quả: 100 = 2 x 2 x 5 x 5

Hãy luôn nhớ cảm ơnvote 5*
nếu câu trả lời hữu ích nhé!

TRẢ LỜI

  • tuongtaylor
  • Hội code dạo
  • Trả lời

    2398

  • Điểm

    47633

  • Cảm ơn

    1759

  • tuongtaylor
  • 14/06/2021

n = int [input ["n = "]] 
for i in range[2,n+1]:
    while [n != 0]and[n % i==0]:
        print[i,end=" "]
        n=n/i 
        

Hãy giúp mọi người biết câu trả lời này thế nào?

star star star star star star star star star star star star star star star star star star star star star star star star star star star star star star

    • manhquang0306
    • team IQ vô cực
    • Trả lời

      2263

    • Điểm

      41426

    • Cảm ơn

      1636

    code thế lại dài quá anh ui -.-

    • tuongtaylor
    • Hội code dạo
    • Trả lời

      2398

    • Điểm

      47633

    • Cảm ơn

      1759

    ok

  • manhquang0306
  • team IQ vô cực
  • Trả lời

    2263

  • Điểm

    41426

  • Cảm ơn

    1636

  • manhquang0306
  • Mod Hoidap247

  • 14/06/2021

n = int[input["n = "]]
i = 2

while n !=1:
    if n % i == 0:
        print[i,end = " "]
        n = n // i
    else:
        i = i + 1

Hãy giúp mọi người biết câu trả lời này thế nào?

star star star star star star star star star star star star star star star star star star star star star star star star star star star star star star

Bài 1: Phân tích một số thành tích các thừa số nguyên tố Input: n = 120 Output: 2 2 2 3 5 Ý tưởng: Chia số n cho đến khi nào thương bằng 1. 120 / 2 60 %3D 60 / 2 30 30 / 2 15 15 / 3 5 / 5 ---> dừng 5 %3D 1 %3D 1


Bài Viết Liên Quan

Chủ Đề