Q a m a t h

Loading...
Vui lòng chờ trong giây lát!

[Python] Bài tập Python cơ bản – Phần 2 (Lời giải)

Python
là một ngôn ngữ lập trình đa mẫu hình, lập trình hướng đối tượng và lập trình cấu trúc được hỗ trợ hoàn toàn, và nhiều tính năng của nó cũng hỗ trợ lập trình hàm và lập trình hướng khía cạnh (bao gồm siêu lập trình và siêu đối tượng (phương thức thần kỳ)).Các mẫu hình khác cũng được hỗ trợ thông qua các phần mở rộng, bao gồm thiết kế theo hợp đồng và lập trình logic.

I. Bài tập Python mức độ 1
1. Nhập ký tự
Đề bài 1: Viết chương trình liệt kê tất cả các số nguyên tố nhỏ hơn n. Số nguyên dương n được nhập từ bàn phím.
Ví dụ:
Nhập số nguyên dương n = 100
Tất cả các số nguyên tố nhỏ hơn 100 là:
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 

Lời giải:
 
import math
 
"""
 * check so nguyen to
 * 
 * @author viettuts.vn
 * @param n: so nguyen duong
 * @return true la so nguyen so, 
 *         false khong la so nguyen to
"""
def isPrimeNumber(n):
    # so nguyen n < 2 khong phai la so nguyen to
    if (n < 2):
        return False;
 
    # check so nguyen to khi n >= 2
    squareRoot = int(math.sqrt(n));
    for i in range(2, squareRoot + 1):
        if (n % i == 0):
            return False;
    return True;
 
n = int(input("Nhập số nguyên dương n = "));
print ("Tất cả các số nguyên tố nhỏ hơn", n, "là:");
sb = "";
if (n >= 2):
    sb = sb + "2" + " ";
for i in range (3, n+1):
    if (isPrimeNumber(i)):
        sb = sb + str(i) + " ";
    i = i + 2;
print(sb);

Đề bài 2: Viết chương trình liệt kê tất cả các số nguyên tố nhỏ hơn n. Số nguyên dương n được nhập từ bàn phím.
Ví dụ:
Nhập số nguyên dương n = 10
10 Số nguyên tố đầu tiên là:
2 3 5 7 11 13 17 19 23 29 

Lời giải:
import math
 
"""
 * check so nguyen to
 * 
 * @author viettuts.vn
 * @param n: so nguyen duong
 * @return true la so nguyen so, 
 *         false khong la so nguyen to
"""
def isPrimeNumber(n):
    # so nguyen n < 2 khong phai la so nguyen to
    if (n < 2):
        return False;
 
    # check so nguyen to khi n >= 2
    squareRoot = int(math.sqrt(n));
    for i in range(2, squareRoot + 1):
        if (n % i == 0):
            return False;
    return True;
 
n = int(input("Nhập số nguyên dương n = "));
print (n, "Số nguyên tố đầu tiên là:");
dem = 0; # đếm số số nguyên tố
i = 2;   # tìm số nguyên tố bắt dầu từ số 2
sb = "";
while (dem < n):
    if (isPrimeNumber(i)):
        sb = sb + str(i) + " ";
        dem = dem + 1;
    i = i + 1;
print(sb);
Mới hơn Cũ hơn
Trang trí đón tết cho blog/website bằng hình ảnh câu đối, cành mai Trang trí đón tết cho blog/website bằng hình ảnh câu đối, cành mai