Предмет: Информатика, автор: mitka7698

Здравствуйте! Пожалуйста, помогите написать программу на языке PascalABC.NET
Формулировка: Даны натуральное число N и целые числа A1, A2, …, AN. Определить количество членов последовательности A1, A2, …, AN, являющихся квадратами чётных чисел.

Ответы

Автор ответа: BobbyFresnel
2

function IsFullSqr(n: integer): boolean;

begin

 var (i, m) := (1, 1);

 while m < n do

 begin

   i += 2;

   m += i

 end;

 Result := m = n;

end;

begin

 var n := ReadInteger('n=');

 Println('Вводите последовательность');

 ReadSeqInteger(n)

   .Where(p -> ((p mod 10) in [0, 4, 6]) and IsFullSqr(p))

   .Count.Println

end.

Использовано свойство квадрата числа быть суммой последовательности нечетных чисел: 1+3+5+ ...

Квадраты четных чисел оканчиваются на 0, 4 или 6.

Похожие вопросы
Предмет: Математика, автор: Людмила286368