мета-данные страницы
Загрузка не удалась. Возможно, проблемы с правами доступа?
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| pascal:files [20/11/2009 13:53] – dnaumov | pascal:files [06/02/2018 10:56] (текущий) – [Замена стандартного ввода / вывода] oca | ||
|---|---|---|---|
| Строка 17: | Строка 17: | ||
| fout: textfile; | fout: textfile; | ||
| a, b, c: integer; | a, b, c: integer; | ||
| + | s : string; | ||
| + | f, h, p : real; | ||
| begin | begin | ||
| Строка 28: | Строка 30: | ||
| writeln(fout, | writeln(fout, | ||
| writeln(fout, | writeln(fout, | ||
| - | writeln(fout, | + | writeln(fout, |
| close(fout) {обязательно закрываем файл после завершения работы с ним} | close(fout) {обязательно закрываем файл после завершения работы с ним} | ||
| Строка 61: | Строка 63: | ||
| </ | </ | ||
| + | |||
| + | ===== Замена стандартного ввода / вывода ===== | ||
| + | |||
| + | <code pascal|Считывание из файла> | ||
| + | var | ||
| + | a, b, c : integer; | ||
| + | s : string; | ||
| + | f, h, p : real; | ||
| + | |||
| + | begin | ||
| + | assign(input,' | ||
| + | reset(input); | ||
| + | |||
| + | readln(s); | ||
| + | readln(a, | ||
| + | readln(f, | ||
| + | |||
| + | close(input) {закрываем считывание из файла} | ||
| + | end. | ||
| + | </ | ||
| + | |||
| + | |||
| + | <code pascal|Запись в файл> | ||
| + | var | ||
| + | a, b, c: integer; | ||
| + | |||
| + | begin | ||
| + | assign(output, | ||
| + | rewrite(output); | ||
| + | |||
| + | a: | ||
| + | s: | ||
| + | f:=1.2345; h:=-1.2345; p:=0.0; | ||
| + | |||
| + | writeln(s); | ||
| + | writeln(a: | ||
| + | writeln(f: | ||
| + | |||
| + | close(output) {обязательно закрываем файл после завершения работы с ним} | ||
| + | end. | ||
| + | |||
| + | </ | ||
| + | |||
| + | После исполнения программы на диске, в той же папке где и программа появится файл с именем **output.txt** следующего содержания: | ||
| + | |||
| + | < | ||
| + | Пример текста | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | Важно помнить, | ||
| + | |||
| + | ==== Разбор строки ==== | ||
| + | Пусть дан входной файл вида | ||
| + | < | ||
| + | 2 | ||
| + | fam name 5 | ||
| + | fam2 name2 4 | ||
| + | </ | ||
| + | |||
| + | Прочитаем из него данные, | ||
| + | |||
| + | <code pascal> | ||
| + | var | ||
| + | s:string; | ||
| + | c:char; | ||
| + | i:integer; | ||
| + | n : integer; | ||
| + | fname, name: | ||
| + | mark: | ||
| + | position : integer; | ||
| + | begin | ||
| + | assign(input,' | ||
| + | reset(input); | ||
| + | readln(n); | ||
| + | |||
| + | for i := 1 to n do | ||
| + | begin | ||
| + | readln(s); | ||
| + | //fname | ||
| + | position := pos(' ', s); | ||
| + | fname := copy(s, 1, position); | ||
| + | delete(s, | ||
| + | //name | ||
| + | position := pos(' ', s); | ||
| + | name := copy(s, 1, position); | ||
| + | delete(s, | ||
| + | //mark | ||
| + | val(s, mark); | ||
| + | writeln(' | ||
| + | end; | ||
| + | |||
| + | close(input); | ||
| + | |||
| + | end. | ||
| + | </ | ||
| + | |||
| + | В результате получим: | ||
| + | |||
| + | < | ||
| + | fname: fam name: name mark: 5 | ||
| + | fname: fam2 name: name2 mark: 4 | ||
| + | </ | ||
| + | |||
| + | ==== Процедуры и функции ==== | ||
| + | ^ Имя ^ Описание ^ | ||
| + | |<code pascal> | ||