Bài 56:
-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:
2
3
2
5
7
-Kết quả: 2
Bài 57:
-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
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)
-Bộ test
4
3
1
4
5
-Kết quả : 2 3
Bài 58:
-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)
-Bộ test
4
4
1
7
5
-Kết quả : 1
Bài 59:
-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
Nhập dãy vào mảng a[i]
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)
-Bộ test
4
8
1
2
3
-Kết quả : 1