мета-данные страницы
  •  
Загрузка не удалась. Возможно, проблемы с правами доступа?

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

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