Рефераты - Афоризмы - Словари
Русские, белорусские и английские сочинения
Русские и белорусские изложения
 

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

Работа из раздела: «Программирование и комп-ры»

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


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


       Файл  –  це  сукупність  даних  однакового  типу.   Таке   визначення
збігається з визначенням  масиву,  але,  на  відміну  від  останнього,  файл
зберігають на  диску,  кількість  даних  у  файлі  при  його  описуванні  не
вказується, елементи файла не мають індексів, що ускоаднює роботу з ними.
       Опис файлового типу має вигляд:
              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,


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

ref.by 2006—2022
contextus@mail.ru