Отрицательные элементы файла записать в массив - Turbo Pascal
Формулировка задачи:
Написал программу, но она почему то неправильная. Бился, бился и все никак. Нужна помощь.
Создать файл f вещественных чисел. Получить из его отрицательных элементов матрицу А(5,3). Матрицу распечатать. Если невозможно сформировать такую матрицу, сделать сообщение.
Решение задачи: «Отрицательные элементы файла записать в массив»
textual
Листинг программы
program p; const n=10; var f:file of real; b:array[1..5,1..3] of real; k,i,j:integer; a:real; begin randomize; assign(f,'f.dat'); writeln('File:'); rewrite(f); for i:=1 to 50 do // begin a:=-n div 2 + random*n; write(f,a); write(a:8:2); end; writeln; close(f); reset(f); i:=1; j:=1; k:=0; writeln; while not eof(f) do begin read(f,a); if a<0 then begin inc(k); if k>15 then break; b[i,j]:=a; // write(b[i,j]:8:2); inc(j); if j>5 then begin // writeln; j:=1; inc(i); if i>3 then i:=1; end; end; end; Close(f); if k<=15 then writeln('Too small :)') else begin WriteLn('Array B:'); for i:=1 to 3 do begin for j:=1 to 5 do Write(b[i,j]:8:2); WriteLn; end; end; readln; end.
Объяснение кода листинга программы
- В начале программы объявляются необходимые переменные и константы.
- Задается имя файла для записи и чтения данных.
- Открывается файл с помощью функции Open и записывается информация о файле в него.
- Записывается строка с информацией о файле.
- Запускается цикл, который будет выполняться до тех пор, пока не достигнут конец файла.
- Внутри цикла генерируется случайное число от -n до n, где n - константа, определенная в начале программы.
- Записывается сгенерированное число в файл.
- Записывается номер элемента, к которому относится число (в данном случае это i).
- Проверяется условие, что число меньше нуля. Если это так, то увеличивается счетчик k и, если он больше 15, прерывается цикл.
- Если число меньше нуля, записывается значение числа в массив b.
- Увеличивается значение счетчика j.
- Если значение j больше 5, то сбрасывается счетчик i и j.
- Если значение i больше 3, то сбрасывается счетчик i.
- Закрывается файл с помощью функции Close.
- Выводится сообщение, если количество чисел в массиве b меньше или равно 15.
- Выводится сообщение, если количество чисел в массиве b больше 15.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
- Выводится сообщение с информацией о массиве b.
- Выводится сообщение с информацией о файле.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д