Рефераты. модулі та робота з файлами в Паскаль

модулі та робота з файлами в Паскаль

Робота з файлами.

Теоретичні відомості

Файл – це сукупність даних однакового типу. Таке визначення збігається з визначенням масиву, але, на відміну від останнього, файл зберігають на диску, кількість даних у файлі при його описуванні не вказується, елементи файла не мають індексів, що ускоаднює роботу з ними.

Опис файлового типу має вигляд:

Type = File of ;

Процедури і функції для роботи з файлами:
Assign – зв'язує деякий зовнішній файл на диску з файловою змінною.
Reset – відкриває уже раніше створений файл данних на диску, ім'я якого було перед цим пов'язане процедурою Assign.
Rewrite – створює новий файл і відкриває його. Якщо файл вже існує вміст знищується, а сам файл відкривається знову.
Close – закриває файл, який зв'язаний з файловою змінною.
Eof – набуває значення true, якщо досягнуто кінець файла, інакше набуває значення false.
IOResult – використовується для пошуку помилок, які виникають при роботі з файлами.

Індивідуальне завдання

Задача 1.


Написати програму контролю знань студентів з літератури.
Оформити файл відповідей та файл питань.

Задача 2.

Написати програму що виводить на екран студентів, що набрали прохідний бал не нижче 8.

Задача 1:

program zavd1; uses crt; const qfile='quest.txt'; afile='ansver.txt'; var f1,f2:text; i,k:integer; name,ansv:string; begin clrscr; assign(f1,qfile); assign(f2,afile); rewrite(f2); reset(f1); write('Введіть своє ім`я, групу :'); readln(name); writeln(f2,name); while not eof(f1) do begin readln(f1,name); writeln(name); write('Ваша відповідь :'); readln(name); writeln(f2,name); readln(f1,ansv); if ansv=name then k:=k+1; i:=i+1; end; writeln(f2,'Всього питань :'); writeln(f2,i); writeln(f2,'Правильних питань :'); writeln(f2,k); close(f1); close(f2); end.


Р Е З У Л Ь Т А Т И Р О Б О Т И П Р О Г Р А М И :


Вміст файлу протоколу:

Бригіда e02 толстой поет да
Всього питань :
3
Правильних питань :
2

Задача 2:

program typefiles; uses crt; const kolocenok=2; type abiturient=record fio:string; marks:array [1..kolocenok] of integer; end; var ser,i,j,k:integer; abit: array [1..40] of abiturient; temp: abiturient; begin clrscr; write('Введiть кiлькiсть абiтурiентiв: '); readln(k); for i:=1 to k do begin writeln('абiтурiент ',i,':'); write('im`я: '); readln(temp.fio); writeln('Введiть оцiнки: '); for j:=1 to kolocenok do readln(temp.marks[j]); abit[i]:=temp; end; clrscr; for i:=1 to k do begin writeln('абiтурiент ',i,':'); write('im`я: ',abit[i].fio); write(' мае оцiнки: '); ser:=0; for j:=1 to kolocenok do begin write(abit[i].marks[j],', '); ser:=ser+abit[i].marks[j]; end; writeln; if ser>8 then writeln(' З А Ч И С Л Е Н И Й ! '); writeln; end;

end.


Р Е З У Л Ь Т А Т И Р О Б О Т И П Р О Г Р А М И :

абiтурiент 1: im`я: Саша мае оцiнки: 4, 5,
З А Ч И С Л Е Н И Й !

абiтурiент 2: im`я: Петро мае оцiнки: 3, 4,

абiтурiент 3: im`я: Олег мае оцiнки: 4, 2,

абiтурiент 4: im`я: Микола мае оцiнки: 2, 2,


Висновок:поглибив знання, вміння та навички розробки з використанням текстових та типизованих файлів, закріпив свої знання в області записів та типизованих файлів.




2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.