Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

Основы программирования на языке Паскаль

йловой переменной>,<Имя файла>);                        |
|Имя файла задается либо строковой константой, либо через переменную типа   |
|Sting. Имя файла должно соответствовать правилам работающей в данный момент|
|операционной системы. Если строка имени пустая, то связь файловой          |
|переменной осуществляется со стандартным устройством ввода-вывода (как     |
|правило - с консолью).                                                     |
|После этого файл должен быть открыт одной из процедур:                     |
|Reset(<Имя файловой переменной>);                                          |
|Открывается существующий файл для чтения, указатель текущей компоненты     |
|файла настраивается на начало файла. Если физического файла,               |
|соответствующего файловой переменной не существует, то возникает ситуация  |
|ошибки ввода-вывода.                                                       |
|Rewrite(<Имя файловой переменной>);                                        |
|Открывается новый пустой файл для записи, ему присваивается имя, заданное  |
|процедурой Assign. Если файл с таким именем уже существует, то он          |
|уничтожается.                                                              |
|После работы с файлом он, как правило, должен быть закрыт процедурой Close.|
|                                                                           |
|Close(<Имя файловой переменной>);                                          |
|Это требование обязательно должно соблюдаться для файла, в который         |
|производилась запись.                                                      |
|Теперь рассмотрим непосредственную организацию чтения и записи.            |
|Для ввода информации из файла, открытого для чтения, используется уже      |
|знакомый вам оператор Read. Правда, в его формате и использовании вы       |
|заметите некоторые изменения:                                              |
|Read(<Имя файловой переменной>, <Список ввода>);                           |
|Происходит считывание данных из файла в переменные, имена которых указаны в|
|списке ввода. Переменные должны быть того же типа, что и компоненты файла. |
|                                                                           |
|Вывод информации производит, как можно догадаться оператор Write(<Имя      |
|файловой переменной>, <Список вывода>);                                    |
|Данные из списка вывода заносятся в файл, открытый для записи.             |
|Для текстовых файлов используются также операторы Readln и Writeln с       |
|соответствующими дополнениями, относящимися к файловому вводу-выводу.      |
|Любопытно, что вывод данных на монитор и ввод с клавиатуры в языке Паскаль |
|тоже являются действиями с файлами. Они даже имеют свои предопределенные   |
|файловые переменные текстового типа: Output и Input соответственно.        |
|Переменная Output всегда открыта для записи, Input - для чтения. Если не   |
|указывать файловые переменные в операторах ввода-вывода (придем к формату, |
|рассмотренному в теме "Операторы ввода-вывода"), то в случае записи по     |
|умолчанию выбирается файл Output, в случае чтения - Input.                 |
|Как вы знаете, любой файл конечен и продолжать чтение из него информации   |
|можно лишь до определенного предела. Как этот предел установить? Проверить,|
|окончен ли файл, можно вызовом стандартной логической функции Eof(<Имя     |
|файловой переменной>)                                                      |
|Она вырабатывает значение True, если файл окончен, и False - в противном   |
|случае.                                                                    |
|Решим следующую задачу: "Написать программу, которая вводит с клавиатуры   |
|список фамилий учащихся, а затем распечатывает его, кроме тех учащихся, у  |
|которых фамилия начинается с буквы 'Ш'".                                   |
|Так как заранее количество данных не известно, то для их хранения          |
|используем файл. Тип элементов - строковый.                                |
|Program L;                                                                 |
|Var                                                                        |
|I,N : Integer;                                                             |
|F : File Of String;                                                        |
|S : String;                                                                |
|Begin                                                                      |
|Assign(F,'Spis.lst'); {Связываем переменную F с файлом Spis.lst}           |
|Writeln('Введите количество учащихся');                                    |
|Readln(N); {Вводим количество учащихся}                                    |
|Rewrite(F); {Создаем файл для записи в него данных}                        |
|For I:=1 To N Do {Для всех учащихся}                                       |
|Begin                                                                      |
|Writeln('Введите фамилию');                                                |
|Readln(S);                                                                 |
|Write(F,S)                                                                 |
|End;                                                                       |
|Close(F);                                                                  |
|Reset(F);                                                                  |
|Writeln; Writeln('Список учащихся:');                                      |
|While Not(Eof(F)) Do                                                       |
|Begin                                                                      |
|Read(F,S);                                                                 |
|If S[1]<>'Ш' Then                                                          |
|Writeln(S)                                                                 |
|End;                                                                       |
|Close(F)                                                                   |
|End.                
Пред.1112
скачать работу

Основы программирования на языке Паскаль

 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ