|
|
rfile.PAS |
|
{* Работа с файлами. Пример №2 *}Unit RFILE;Interface Implementation Begin writeln('В данной программе реализуются следующие функции работы с текстовыми файлами в Паскаль: чтение из файла, просмотр данных файла, запись в файл, добавление и удаление записи, поиск записи, сортировка данных файла по возрастанию и убыванию.'); End. Program pas; Uses rfile.pas; {* Эту строку можно удалить *} Uses CRT; {* Вызов внешних функций *} Const {* Константы *} N = 1000; S = 25; FileName = 'data.txt'; Type {* Типы переменных *} Data = String[S]; Var {* Необходимые переменные *} M : Array [1..N] Of Data; iM : Word; Max : Word; Po : Word; Change : Boolean; F : Text; Function Empty : Boolean; Begin If Max = 0 Then Empty := True Else Empty; Function Menu : Byte; Var {* В работе нам потребуются переменные: *} T : Byte; WriteLn('Строк в файле ' : ', Max); Filename : ', Max); ' : ', Max); Write('Текущий элемент : '); Write('Ваши действия : '); Menu := T; Var {* Необходимые переменные *} I : Word; Begin For I := 1 To N Do; {* Переменная I увеличивается с 1 до N *} Max := 0; Var {* Необходимые переменные *} I : Integer; Begin For I := 1 To Max Do; {* Увеличиваем I от 1 до Max с шагом 1 *} Var {* Необходимые переменные *} I : Word; For I := 1 To Max Do; {* Увеличиваем I от 1 до Max с шагом 1 *} Change := False; Var {* Необходимые переменные *} I : Word; I := 0; Max := I; Change := False; Po := 1; Var {* В работе нам потребуются переменные: *} Temp : String[S]; Begin Temp := ''; M[Max] := Temp; Change := True; Po := Max; Function Search : Word; Var {* Необходимые переменные *} I : Word; J : Word; P : Word; K : Char; St : String; Fl : Boolean; K := ' '; St := ''; Repeat K := ReadKey; {* Ждем нажатия пользователя *} If K > = ' ' Then St := St + K; If (K = #8) And (Length(St) > = 1) Then St := Copy(St, 1, Length(St) - 1); I := 1; P := 1; While I M[J] Then Begin Temp := M[I]; M[I] := M[J]; M[J] := Temp; Change := True; Po := Max; Var {* В работе нам потребуются переменные: *} YN : Char; Begin If Change Then Begin Write('Список был изменён, сохранить (Y / N)? '); ReadLn(YN); End; If Upcase(YN) = 'Y' Then Save; End; Begin Max := 0; Po := 0; Change := False; iM := 0; While iM9 Do Begin ClrScr; {* Очищаем экран *} iM := Menu; Case iM Of 1 : Wiew; 2 : Save; 3 : Load; 4 : Add; 5 : Po := Search; 6 : Delete(Po); 7 : SortUp; 8 : SortDown; 9 : Close; End; End; End...... 07.08.2014 - Breakpoint - точка остановки 07.08.2014 - Топ-10 самых популярных приложений в Facebook 18.11.2013 - Панель управления и персонализация системы. Windows Vista 18.11.2013 - Логические и физические диски. Windows Vista 18.11.2013 - Удаление файлов и папок 01.11.2013 - Программирование дисковых подсистем: возможности 31.10.2013 - Windows8 или Windows7? 31.10.2013 - Windows8, игры |
|
Non-commercial fansite
|