Дан файл f, компоненты которого являются целыми числами - PascalABC.NET
Формулировка задачи:
Дан файл f, компоненты которого являются целыми числами. Никакая из компонент не равна нулю. Числа в файле идут в следующем порядке: десять положительных, десять отрицательных и т.д. Переписать компоненты файла f в файл g в следующем порядке: пять положительных, пять отрицательных и т.д.
Решение задачи: «Дан файл f, компоненты которого являются целыми числами»
textual
Листинг программы
const r=20; var f,g:file of integer; n,i,j,a,k,p:integer; begin randomize; assign(f,'filef'); rewrite(f); assign(g,'fileg'); rewrite(g); repeat write('Сколько пар десятков чисел записать в файл? n='); readln(n); until n>1; for i:=1 to n do begin for j:=1 to 10 do begin a:=random(20)+1; write(f,a); end; for j:=1 to 10 do begin a:=-random(20)-1; write(f,a); end; end; seek(f,0); writeln('Файл F:'); i:=0; while not eof(f) do begin read(f,a); i:=i+1; write(a:4); if i mod 10=0 then writeln; end; writeln; writeln; seek(f,0); for i:=1 to n do begin k:=r*(i-1); seek(f,k); for j:=k to k+4 do begin seek(f,j); read(f,a); write(g,a); end; for j:=k+10 to k+14 do begin seek(f,j); read(f,a); write(g,a); end; for j:=k+5 to k+9 do begin seek(f,j); read(f,a); write(g,a); end; for j:=k+15 to k+19 do begin seek(f,j); read(f,a); write(g,a); end; end; close(f); seek(g,0); writeln('Файл G:'); i:=0; while not eof(g) do begin read(g,a); i:=i+1; write(a:4); if i mod 10=0 then writeln; end; close(g); end.
Объяснение кода листинга программы
- Объявлены переменные: n, i, j, a, k, p (целые числа)
- Задается значение переменной n (количество пар десятков чисел для записи в файл)
- Создаются файлы f и g для записи и чтения чисел
- В цикле записываются в файл f 10 случайных чисел, затем 10 отрицательных случайных чисел
- В цикле считываются числа из файла f и выводятся на экран с шагом 4
- Закрывается файл f
- В цикле считываются числа из файла g и выводятся на экран с шагом 4
- Закрывается файл g
- Код завершается
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д