Файлы
Этот файл можно создать в среде Turbo Pascal таким образом: • создать новый файл (команда New меню File}; • записать все числа в строках через пробелы; • сохранить его, например «а: intl.dat».
Теперь этот файл будем использовать в программе. Program Example_34; Var F: Text; x, k: Integer; Begin Assign(F, 'a: intl.dan'); {связываем с внешним файлом} Reset(F); {открываем для чтения} While Not Eof(F) Do {пока не конец файла} Begin к :=0; {начальное число элементов строки} While Not Eoln(F) Do {пока не конец строки} Begin Read(F/ х); {считываем очередное число} Write(х,''); {вывод его на экран} Inc(к); {увеличиваем счетчик} End; Writeln ( ' в строке', к, 'элементов'); Readln(F); {переходим к следующей строке файла} End; Close(F); {закрываем файл} Readln; End. Пример 35. Дан текстовый файл, содержащий программу на языке Паскаль. Проверить эту программу на несоответствие числа открывающих и закрывающих круглых скобок. Считать, что каждый оператор программы занимает не более одной строки файла. Решение. Так как по условию задачи каждый оператор занимает не более одной строки, то будем подсчитывать число открывающих и закрывающих скобок в одной строке. Надо заметить, что при проверке правильности расстановки скобок в строке число рассмотренных закрывающих скобок не должно превышать числа уже рассмотренных открывающих скобок. Кроме того, такой файл должен быть создан заранее. Program Example_35; Var F: Text; kl, k2, n: Integer; Ch: Char; Logic,Pp: Boolean; Begin {с именем файла F связывается внешний файл} Assign(F, 'а; Reset(F); {открытие файла F для чтения} п:=0; {счетчик количества строк} Logic:=True; {пока ошибки не определены, то значение True} While Not Eof(F) Do {пока не конец файла} Begin Inc(n); {увеличиваем счетчик количества строк} kl:=0; {счетчики количества открывающих скобок} к2:=0; {счетчики количества закрывающих скобок} Pp:=False; {Рр предназначена для определения ошибки расстановки скобок в строке, начальное значение False, так как пока ошибки расстановки не было} While Not Eoln (F) Do {пока не конец текущей строки файла} Begin Read(F, Ch); {очередной символ строки} {если встретили открывающую скобку, то увеличиваем их счетчик} If Ch = ' (' Then Inc(Kl); {если встречена закрывающая скобка, то если она стоит не раньше открывающей, значение KKK2, поэтому просто увеличиваем счетчик этих скобок, иначе помечаем Рр значением True} , If (Ch = ' ) ' ) Then If (KKK2) Then Inc(K2) Else Pp:=True; End; {если не все закрывающие скобки расставлены (К1Еще по теме Файлы:
- МЕТОД КОРРЕКЦИИ ПРОШЛОГО
- 7.8. ВНУТРЕННИЙ ПОРЯДОК
- Установка программы Астропроцессор ZET
- Социальные сети
- О программе Астропроцессор ZET
- Навыки, хитрости, производительность
- Осмотр средств вычислительной техники
- Трудолюбивые лентяи
- Относитесь к сомнению, как к дружественному напоминанию
- ВМЕСТО ЗАКЛЮЧЕНИЯ
- 6.1. Институт Гэллапа1
- ПРОШЛОГО НЕТ. ЕСТЬ НАША ПАМЯТЬ О ПРОШЛОМ, А ЭТО НЕ ЧТО ИНОЕ, КАК ИЛЛЮЗИЯ.
- ЛЕЧЕНИЕ И ПРЕДУПРЕЖДЕНИЕ
- 5.2. Техника редактирования таблиц10
- Л.О. Доліненко, В.О. Доліненко, С.О. Сарновська. Цивільне право України, 2006
- ЦИВІЛЬНЕ ПРАВО УКРАЇНИ
- ПЕРЕДМОВА
- Частина І ПРОГРАМА КУРСУ «ЦИВІЛЬНЕ ПРАВО УКРАЇНИ»
- Розділ І. Загальні положення цивільного права
-
Windows -
Архитектура компьютера -
Интернет -
Информатика -
Компьютер -
Компьютерные и телекоммуникационные системы -
Программирование -
Социальные сети -
-
Английский язык -
Астрология -
Астрономия -
Биология -
Военная литература -
Журналистика -
Компьютерная инженерия -
Педагогика -
Право -
Психология -
Социология -
Lecture.Center