Работа с файлами. Программирование на языке Паскаль

Содержание

Слайд 2

Работа с файлами Для того, чтобы система автоматически тестировала Ваше решение,

Работа с файлами

Для того, чтобы система автоматически тестировала Ваше решение, необходимо

ввод и вывод данных осуществлять из текстовых файлов. 
Ввод осуществляется из файла input.txt
Вывод осуществляется в файл output.txt

Для того, чтобы организовать ввод данных из файла нам надо:

1. Завести переменную типа текст и переменную, в которую будем записывать прочитанное значение.
Var t:text; a:integer;

Слайд 3

2. Связать эту текстовую переменную с файлом из которого будет производиться

2. Связать эту текстовую переменную с файлом из которого будет производиться

чтение. 
Begin assign(t,'input.txt');

3. Открыть файл для чтения.
reset(t);

4. Теперь можно читать данные. Если в файле данные записаны в одной строке, через пробел, то используется все время процедура read столько раз, сколько чисел нужно прочитать.
Если же строк несколько, то, используется readln. В результате чего будет считано последнее число строки и курсор переместится на новую.
read(t,a);

Внимание! Для чтения из файла в скобках необходимо на первом месте указать ту текстовую переменную которую Вы связали с входным файлом,  затем список переменных для чтения.

Слайд 4

5. Как только прочитали все переменные, необходимо закрыть файл. close(t); Организация

5. Как только прочитали все переменные, необходимо закрыть файл.
close(t);

Организация

вывода результатов в текстовый файл.

1. Опять как и в случае со вводом, необходимо связать текстовую переменную с выходным файлом. Только файл уже называется output.txt.
assign(t,'output.txt');

2. Затем необходимо создать или перезаписать файл output.txt
rewrite(t); Создать или открыть и дописать в конец файла  append(t); Если файла не существует, то он будет создан;

3. Выводим данные. Не забываем ставить файловую переменную в начале списка вывода.
write(t,'Вот число из файла input.txt ', a);

4. Как и в предыдущем случае после вывода всех данных необходимо закрыть файл.
close(t);

Слайд 5

Program Vvod_Vivod; var a:longint; t:text; Begin assign(t,'input.txt'); reset(t); read(t,a); close(t); ---------------------

Program Vvod_Vivod; var a:longint; t:text; Begin assign(t,'input.txt'); reset(t); read(t,a); close(t); --------------------- assign

(t,'output.txt'); rewrite(t); write(t,a); close(t); End.

Program Vvod_Vivod;
var
a,b:longint;
t1,t2:text;
Begin
assign(t1,'input.txt');
assign(t2,'output.txt');
reset(t1);
read(t1,a,b);
assign (t2,'output.txt');
append(t2);
writeln(t2,b);
writeln(t2,a);
close(t2); close(t1);
End.

Слайд 6

Перенаправление Прочитайте число n из файла input.txt и выведите его в

Перенаправление

Прочитайте число n из файла input.txt и выведите его в файл

output.txt (-32768 < n < 32767)
Входные данные:
В единственной строке входного файла input.txt записано число от -32767 до 32766!
Выходные данные:
В единственную строку выходного файла output.txt нужно вывести в точности то же число, которое задано во входном файле!

Примеры:

Слайд 7

Мелкий шулер Игрока в карты называют шулером, если он незаметно для

Мелкий шулер

Игрока в карты называют шулером, если он незаметно для других

игроков подменивает карты. Вам необходимо немного пожульничать. Во входном файле input.txt находятся результаты контрольной работы: Ваш и Вашего друга. Стало известно, что друг написал контрольную лучше Вас. Измените порядок следования отметок и запишите его в файл output.txt.
Входные данные:
В единственной строке входного файла input.txt записаны через пробел два целых числа в диапазоне от -32767 до 32766.
Выходные данные:
В выходной файл output.txt нужно вывести те же числа, которые заданы во входном файле, только в обратном порядке.

Примеры:

Слайд 8

А + В Даны числа А и В (0 Входные данные:

А + В

Даны числа А и В (0<А,B<=32000). Найти сумму А+В

и вывести ее в выходной файл.
Входные данные:
В первой строке входного файла содержится единственное число А, (0<А<=32000). Во второй строке входного файла содержится единственное число В, (0<В<=32000).
Выходные данные:
В единственную строку выходного файла вывести сумму этих чисел.

Примеры:

Слайд 9

Перепутал строки Даны два числа А и В(0 Входные данные: Первая

Перепутал строки

Даны два числа А и В(0<=А,В<2 000 000 000). Вывести

числа в обратном порядке.
Входные данные:
Первая строка входного файла содержит число А. Вторая строка входного файла содержит число В. (0<=А,В<2000000)
Выходные данные:
В первой строке выходного файла должно быть число В. Во второй строке выходного файла число А.

Примеры:

Слайд 10

Рыбак рыбака видит из далека В деревне Гадюкино живет Василий Иванович.

Рыбак рыбака видит из далека

В деревне Гадюкино живет Василий Иванович. Он

заядлый рыбак. Встретил как-то раз Василий Иванович своего соседа и стали они обсуждать количество пойманной ими рыбы. Зная, что сосед любит приврать, Василий Иванович вывел закономерность. Сосед всегда накидывает 3 кг. к своему улову. Помогите рассчитать количество пойманной соседом рыбы.
Входные данные:
В единственной строке входного файла input.txt записано целое число от 3 до 65535.
Выходные данные:
В  единственную строку выходного файла output.txt нужно вывести количество пойманной соседом рыбы.

Примеры: