
Лабы по программированию (КИ МГОУ) / Лабы по программированию 1 курс / Лаба4 / отчёт 4
.docЛабораторная работа №4
Тема: Программирование алгоритмов обработки файловых структур данных на языке Паскаль в инструментальной среде Delphi.
Цель работы: Овладение навыками алгоритмизации и программирования файловых структур данных, проектированием структуры файла, вывод данных в файл, чтение данных из файла.
-
Изучить возможности языка программирования для обработки строковых данных;
-
Освоить функции и процедуры обработки текстовых строк;
-
Овладеть практическими навыками разработки и программирования итерационной циклической структуры (while, repeat) для обработки текстовых строк.
Выполнил студент группы
Задание 1
Исходный код программы: type R=Record famil:string[25]; oc1:1..5; oc2:1..5; end; var F:File of R; a:R; k:Integer; begin Assign(F,'SPISOK.TXT'); Writeln('Vvod spiska zakonchitsya nagatiem'); Writeln('Klavishi"^".'); Rewrite(F); k:=0; Repeat k:=k+1; write('Vvedite svedenie na ',k,'ychenika'); Readln(a.famil); if a.famil<>'^' then begin readln(a.oc1); readln(a.oc2); write(F,a) end; writeln until a.famil='^'; close(F); reset(F); Writeln('Svedenie ob ychenicah klassa: '); While not EOF(f) do begin read(F,a); Write(a.famil,' ',a.oc1,' ',a.oc2); Writeln; end; Close(F); Reset(F); Writeln('Spisoc yspevauchsih ychenikov: '); While not EOF(F) do begin Read(F,a); if (a.oc1>=4) And (a.oc2>=4) then Writeln(a.famil) end; Close(F); readln; end. |
Исходные данные:
Результаты расчёта: Блок схема:
|
Задание 2
Исходный код программы:
var f,g,h:text; k:integer; begin assign(f,'f.txt'); assign(g,'g.txt'); assign(h,'h.txt'); reset(f); rewrite(g); while not eof(f) do begin read(f,k); if k>0 then write(g,' ',k); end; reset(f); reset(g); rewrite(h); while not eof(g) do begin read(g,k); write(h,k,' '); repeat read(f,k); until k<0; write(h,k,' '); end; close(f); close(g); close(h); end. |
Исходные данные:
Результаты расчёта: Блок схема:
|
Задание 3
Исходный код программы:
var S:string; flag:boolean; f:text; begin flag:=false; write('Vvedite name fail: '); repeat readln(S); {$I-} assign(f,s); reset(f); case IOResult of 0:flag:=true; 3:write('Pyti k fail ykazan neverno. Izmenite pyti: '); 5:write('Dostypa k fail not. Izmenite name disk: '); 152:write('Takogo diska net. Izmenite name fail: '); else write('Takogo fail net. Izmenite name fail: '); end; until flag; {$I+} end. |
Исходные данные:
Результаты расчёта: Блок схема:
|
Задание 4
Исходный код программы:
var f,k:text; ch:integer;
begin assign(f,'f.txt'); assign(k,'k.txt'); reset(f); rewrite(k); while not eof(f) do begin read(f,ch); write(k,ch:3); end; close(f); close(k); end. |
Исходные данные:
Результаты расчёта: Блок схема:
|
Задание 5
Исходный код программы:
var a:array[1..5] of integer; S:string; f,k:text; i,j,L,max:integer; begin assign(f,'f.txt'); assign(k,'k.txt'); reset(f); rewrite(k); j:=0; while not eof(f) do begin max:=-MaxInt; for i:=1 to 5 do begin if not eof(f) then begin read(f,a[i]); if a[i]>max then max:=a[i]; end; end; write(k,' ',max); j:=j+1; end; close(f); close(k); end. |
Исходные данные:
Результаты расчёта:
Блок схема:
|