Дан массив. Определить количество полных квадратов среди элементов массива. Вывести исходный массив и все элементы массива, значение которых составляет полный квадрат.
begin var a:=ReadArrInteger(ReadInteger('Введите размер массива->')); Println('Элементы массива, значение которых составляет полный квадрат:'); a.Where(t->(t>=0) and (sqr(trunc(sqrt(t)))=t)).Println; end.
Пример:
Введите размер массива-> 10 81 2 10 15 100 36 40 144 72 0 Элементы массива, значение которых составляет полный квадрат: 81 100 36 144 0
0 votes Thanks 2
Giammy
Так вот на будущее, уточняйте программу в условии
Giammy
Точнее не программу, а среду программирования
Giammy
var a:array[1..1000] of integer; n,i:integer; begin Write('Введите размер массива-> ');Readln(n); Write('Введите элементы массива-> '); for i:=1 to n do begin read(a[i]); If (a[i]>=0) and (sqr(trunc(sqrt(a[i])))=a[i])then Write(a[i],' '); end; end.
Answers & Comments
Verified answer
//PascalABC.NET//Версия 3.3. сборка 1583 (25.11.2017)
begin
var a:=ReadArrInteger(ReadInteger('Введите размер массива->'));
Println('Элементы массива, значение которых составляет полный
квадрат:');
a.Where(t->(t>=0) and (sqr(trunc(sqrt(t)))=t)).Println;
end.
Пример:
Введите размер массива-> 10
81 2 10 15 100 36 40 144 72 0
Элементы массива, значение которых составляет полный квадрат:
81 100 36 144 0
n,i:integer;
begin
Write('Введите размер массива-> ');Readln(n);
Write('Введите элементы массива-> ');
for i:=1 to n do
begin
read(a[i]);
If (a[i]>=0) and (sqr(trunc(sqrt(a[i])))=a[i])then Write(a[i],' ');
end;
end.