Найти количество квадратов нечётных чисел среди компонентов типизированного файла - Pascal

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Дан файл f , компоненты которого являются целыми числами Найти: Количество квадратов нечётных чисел среди компонентов.

Решение задачи: «Найти количество квадратов нечётных чисел среди компонентов типизированного файла»

textual
Листинг программы
uses crt;
var f:file of integer;
    a,k:integer;
    t:real;
begin
clrscr;
assign(f,'file');
rewrite(f);
writeln('Введите в файл целые числа, окончание ввода 0:');
repeat
readln(a);
write(f,a);
until a=0;
clrscr;
k:=0;
writeln('Содержание исходного файла:');
reset(f);
while not eof(f) do
 begin
  read(f,a);
  write(a,' ');
  if (a>0) then
   begin
    t:=sqrt(a);
    if(sqr(round(t))=a)and(trunc(t)mod 2<>0) then k:=k+1;
   end;
 end;
close(f);
writeln;
write('Количество квадратов нечетных чисел=',k);
readln
end.

Объяснение кода листинга программы

  1. Создаётся объект файла с именем f для работы с целыми числами.
  2. Пользователю предлагается ввести целые числа, которые будут записаны в файл. Ввод завершается, когда пользователь вводит 0.
  3. Содержимое файла выводится на экран.
  4. Переменная k инициализируется нулем. Она будет использоваться для подсчёта квадратов нечётных чисел.
  5. Запускается цикл чтения из файла.
  6. В каждой итерации цикла число из файла записывается на экран.
  7. Если число больше нуля, то вычисляется его квадратный корень.
  8. Проверяется, является ли квадрат корня нечётным числом. Для этого проверяется, делится ли квадрат на 2 без остатка и является ли остаток от деления нечётным.
  9. Если условие выполняется, то к переменной k прибавляется единица.
  10. Цикл завершается, когда достигается конец файла.
  11. Выводится сообщение с количеством квадратов нечётных чисел.
  12. Программа завершается, пока пользователь не нажмет клавишу readln.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.846 из 5
Похожие ответы