Файлы последовательного доступа - Pascal ABC
Формулировка задачи:
Сформировать файл из значений случайных величин:
0,32;0,524;0,789;0,556;0,761;0,248;0,345;0,911;0,216
Определить для данной последовательности среднее ариф. компонентов, значения которых меньше 0,5
Заранее спасибо!
Либо,если всю программу сделать трудно, то только код для второй части задания..Спасибо
Решение задачи: «Файлы последовательного доступа»
textual
Листинг программы
var f:text; a,s:real; n,i,k:integer; begin write('Сколько чисел записать в файл n='); readln(n); assign(f,'111.txt'); rewrite(f); for i:=1 to n do begin a:=random; write(f,a:6:2); end; close(f); reset(f); k:=0; s:=0; while not seekeof(f) do begin read(f,a); if a<0.5 then begin s:=s+a; k:=k+1; end; end; close(f); if k=0 then write('В файле нет чисел меньше 0.5') else write('Среднее арифметическое чисел меньше 0.5=',s/k:0:2); end.
Объяснение кода листинга программы
- Создается переменная
f
типаtext
, которая будет использоваться для работы с файлами. - Создаются три переменные
a
,s
иn
типаreal
, которые будут использоваться для генерации случайных чисел и подсчета суммы. - Создаются три переменные
i
,n
иk
типаinteger
, которые будут использоваться для работы с индексами и подсчетом чисел. - Выводится запрос на ввод количества чисел, которые нужно записать в файл.
- Задается имя файла
f
и происходит перезапись содержимого файла. - Запускается цикл
for
, который будет выполняться столько раз, сколько указано в переменнойn
. - Внутри цикла генерируется случайное число
a
и записывается в файлf
. - После завершения цикла
for
закрывается файлf
. - Сбрасывается счетчик
k
иs
в ноль. - Задается условие
while not seekeof(f)
для повторного чтения содержимого файла до тех пор, пока файл не будет полностью прочитан. - Внутри условия читается число
a
из файлаf
. - Проверяется условие
if a<0.5
и если оно истинно, то суммируется числоa
со значением счетчикаs
и увеличивается значение счетчикаk
. - После завершения условия
while
закрывается файлf
. - Выводится сообщение о том, есть ли числа меньше 0.5 в файле или нет.
- Если значение счетчика
k
равно нулю, выводится сообщение о том, что в файле нет чисел меньше 0.5. - Если значение счетчика
k
не равно нулю, выводится среднее арифметическое чисел меньше 0.5.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д