Bài 56: Liệt kê phần tử là số chẵn
-Xác định bài toán:
input: số nguyên dương N và dãy a1,a2....aN
output: liệt kê phần tử là số chẵn trong dãy
-Thuật toán:
nhập dãy vào dãy a[i]
Duyệt từ đầu đến cuối dãy ,nếu a[i] là số chẵn thì đưa phần tử đó ra, mỗi phần tử cách nhau 1 dấu cách.
Code:
n= int(input())
a= list()
for i in range (0,n):
a.append(int(input()))
for i in range (0,n):
if a[i] % 2 == 0:
print(a[i])
Test:
4
3
2
1
4
Kết quả:
2
4
Bài 57: Vị trí phần tử là số chính phương
-Xác định bài toán:
input: số nguyên dương N và dãy a1,a2,...,aN
output: đưa ra vị trí các phần tử là số chính phương trong dãy
-Thuật toán:
số chính phương là số có căn bậc hai là một số nguyên
biểu thức toán học: căn u=[căn u]
nhập dãy vào mảng a[i]
Duyệt từ đầu đến cuối dãy ,nếu a[i] là số chính phương thì đưa vị trí i ra mỗi giá trị tìm được cách nhau 1 dấu cách.
Code:
from math import sqrt
from math import trunc
n= int(input())
a= list()
for i in range(0,n):
a.append(int(input()))
for i in range(0,n):
if sqrt(a[i]) == int(sqrt(a[i])):
print(i)
Test:
3
6
2
4
1
Kết quả:
2
Bài 58 : Đếm phần tử
-Xác định bài toán:
input: số nguyên dương N và dãy a1,a2,...,aN
output: đếm số lượng các phần tử trong dãy chia hết cho 2 nhưng không chia hết cho 3
-Thuật toán:
Nhập dãy vào mảng a[i]
Res=0;
Duyệt từ đầu đến cuối dãy ,nếu a[i] chia hết cho 2 và không chia hết cho 3 thì tăng biến Res lên 1 đơn vị
Đưa biến res ra.
Code:
n= int(input())
a= list()
for i in range (0,n):
a.append(int(input()))
res = 0
for i in range (0,n):
if a[i] % 2 == 0 and a[i] % 3 !=0:
res +=1
print(res)
Test:
4
4
1
7
5
Kết quả:
1
Bài 59: Tìm phần tử nhỏ nhất
-Xác định bài toán:
input: số nguyên dương N và dãy a1,a2,…,aN
output: phần tử có giá trị nhỏ nhất
-Thuật toán:
Khởi tạo rmin = a[0]
Duyệt từ đầu đến cuối dãy, nếu a[i] < rmin thì cập nhật lại rmin = a[i];
Đưa rmin ra.
Code:
n = int(input())
a = list()
for i in range(0, n):
a.append(int(input()))
rmin = a[0]
for i in range(1, n):
rmin = min(rmin, a[i])
print(rmin)
Test:(N=4)
3
1
2
5
Kết quả:
1