Bai Tap

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

1. Viết chương trình nhập vào 1 số nguyên dương n (n<1000).

Hãy kiểm tra xem n có phải là số


nguyên tố hay không và in thông báo ra màn hình.

Hướng dẫn giải:

B1: Nhập số nguyên n

B2: i =2, nt=True

B3: Lần lượt i thay đổi từ 2 cho đến phần nguyên căn bậc 2 của n

+ Nếu n chia hết cho i thì nt = False

+ i = i +1

B4: Nếu nt = True thì thông báo n là số nguyên tố, ngược lại n không là số nguyên tố

import math

#B1: Nhập số nguyên dương n

n=int(input("Nhập số nguyên dương n:"))

#B2: i=2,nt=True

i=2

nt=True

#B3: lần lượt cho i thay đổi từ 2 cho đến phần nguyên căn bậc 2 của n

while i <= int(math.sqrt(n)):

if n%i==0:nt=False

i+=1#i=i+1

#B4: Nếu nt=True thì thông báo n là số nguyên tố ngược n không là snt

if nt :print(n,"là số nguyên tố")

else:print(n,"không là số nguyên tố")

2. Nhập vào 1 số nguyên dương n. Tính tổng các số nguyên tố nhỏ hơn n
Input: 10
Output: 17

Hướng dẫn giải (thuật toán)

B1: Nhập số nguyên n

B2: sum=0,j=2

B3: Lần lượt j thay đổi từ 2 cho đến n -1

B1: i =2, nt=True


B2: Lần lượt i thay đổi từ 2 cho đến phần nguyên căn bậc 2 của j

+ Nếu j chia hết cho i thì nt = False

+ i = i +1

B3: Nếu nt == True thì sum =sum +j

B4: In tổng ra màn hình

import math

n=int(input("Nhập số nguyên dương n:"))

sum=0

for j in range(2,n):

i=2

nt=True

while i <= int(math.sqrt(j)):

if j%i==0:nt=False

i+=1

if nt:

sum+=j

print(j,end=" ")

print("Tổng các số nguyên tố nhỏ hơn",n,"là",sum)

3. Nhập vào 1 số nguyên dương n. Tính tổng các số chính phương nhỏ hơn n (số chính phương là
số có bình phương phần nguyên căn bậc 2 của nó thì bằng chính nó)
Input: 10
Output: 14
4. Nhập vào 1 số nguyên dương n (n<10000). Đếm xem có bao nhiêu số hoàn hảo nhỏ hơn n ( Số
hoàn hảo là số có tổng các ước nhỏ hơn nó bằng chính nó)
Input: 100
Output: 2

You might also like