Bài 57:
1) Xác định bài toán:
Input: Nhập 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 là: √u=⌊√u⌋.
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
Code
3) 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)
4) Test
3,4,8,9,2 —> 0,2