Реферат: Примеры фрагментов программ ввода вывода с текстовыми файлами на языках Qbasic, TurboPascal
Примеры фрагментов программ ввода - вывода с текстовыми файлами на языках Qbasic, TurboPascal
Входные и выходные файлы - текстовые файлы testYX.txt, resultYX.txt соответственно. Y - номер задачи (1,2, 3), X - номер теста (1,2,3,...). Например, для задачи 1 при использовании данных из теста 3 входной и выходной файлы будут иметь обозначения, соответственно, test13.txt и result13.
Пусть входной файл состоит из трёх строк: первая строка - три целых числа XI, Х2, ХЗ, разделённые пробелами. Две другие строки - символьные строки Y1, Y2. А выходной файл содержит значение переменной D, равной среднему арифметическому чисел XI, Х2 и ХЗ и значение Y- результат сложения строк Y1 и Y2. Значения переменных выводится для контроля на экран. Входной и выходной файлы находятся в личном каталоге C:\Olim2006\Petrov\.
Qbasic
Входные файлы создаются в любом текстовом редакторе для DOS. Целые числа в строке разделены пробелами. Каждое строковое значение занимает в файле отдельную строку.
CLS
REM Общий номер входного и выходного файлов вводится в строковую переменную F$
^ PRINT "Введите номер входного и выходного файлов (11,12 или 13) в F$"
INPUT "F$ = "; F$
REM Формирование обозначений входного и выходного файлов в переменных File1$
и File2$.
File1$ = "C:\01im2006\Petrov\test" + F$ + ".txt"
File2$ = "C:\Olira2006\Petrov\result" + F$ +".txt"
^ REM Файл File1$ открывается для ввода как файл #1
Open File1$ FOR INPUT AS #1
REM Три числа из первой строки файла #1 вводятся в переменные X1, Х2, ХЗ
REM Две следующие строки из файла вводятся в переменные Y1$, Y2S
REM Каждый оператор INPUT #1, <Список ввода> вводит из файла одну строку в
переменные, указанные в <Списке ввода>
^ INPUT #1, X1, Х2, ХЗ
INPUT #1, Y1$
INPUT #1, Y2$
REM Файл #1 закрывается
CLOSE #1
D=(Xl+X2+X3)/3
Y$= Y1$+Y2$
REM Вывод результатов для контроля на экран
PRINT "X1 = "; X1;" Х2 = ";Х2; " ХЗ = ";ХЗ
^ PRINT "D = "; D
PRINT "Y1$ = "; Y1$
PRINT "Y2$ = "; Y2$
PRINT "Y$ = "; Y$
REM Вывод результатов ввода в выходной файл в том же формате, что и во входном
файле
^ REM Файл File2$ открывается для вывода (создаётся) как файл #2
OPEN File2$ FOR OUTPUT AS #2
REM Каждый оператор PRINT #2, <Список вывода> выводит в файл одну строку.
PRINT #2, D
PRINT #2, Y$
REM Выходной файл #2 закрывается
CLOSE #2
TurboPascal 7.0 (Borland Pascal 7.0)
Входные файлы создаются в любом текстовом редакторе для DOS. Целые числа в строке разделены прс Каждое строковое значение занимает в файле отдельную строку.
Program in_out;
{Для ввода и вывода данных из файлов введены переменные file_in и
File_out типа text}
var file_in, file_out: text;
yl,y2,y,filel, file2, f: string;
xl,x2,x3: integer;
d:real;
begin
write('Введите номер входного и выходного файлов: ');
readln(f);
{Формирование обозначений входного и выходного файлов в переменных}
{file1 и file2: C:\Olim2006\Petrov\testYX.txt и C:\Olim2006\Petrov\resultY,
где YX = f}
file1:= 'C:\01im2006\Petrov\test'+f+'.txt';
file2:= 'C:\Olim2006\Petrov\rezult'+f+'.txt’;
{Файловым переменным file_in и file_out ставятся в соответствие обозначения}
{входного и выходного файлов из переменных file1 и file2}
assign(file_in, file1);
assign(file_out, file2);
{Входной файл открывается. Указатель строк ставится на первую строку}
reset(file_in);
{оператор вида readln(file_in, z) читает из входного файла file_in в
переменную z}
{Ввод текстовых строк из входного файла file__in}
readln(file_in,xl,x2,xЗ); readln(file_in,yl); readln(file_in,y2);
{Входной файл закрывается}
close(file_in);
{Открывается файл, соответствующий переменной file_out типа text}
rewrite(file_out);
d:=(xl+x2+x37/3;
y:=yl+y2;
writeln(d);
writeln(y);
{оператор вида writeln(file_out, z) запись значения переменной z в файл
file_out}
writeln{file_out, d);
writeln(file_out, y);
{Закрытие выходного файла}
close(file_out);
end.
Вариант с переопределением стандартных потоков ввода-вывода
Program in_out2;
uses crt;
var
yl, y2, у, filel,file2,f: string;
xl,x2,x3: integer;
d:real;
begin
clrscr;
write('Введите номер входного и выходного файлов: ');
readln(f);
file1:= 'C:\Olim2006\Petrov\test'+f+'.txt' ;
file2:= 'C:\Olim2006\Petrov\rezult'+f+'.txt' ;
assign(input,file1); {если '', то чтение с клавиатуры}
assign(output,file2); {если '', то запись на монитор}
reset(input);
rewrite(output) ;
readln(xl, x2,xЗ); readln(y1); readln(y2);
d:=(xl+x2+x3)/3;
y: =y1 + y2;
writeln(d);
writeln(y) ;
close(input);
close(output);
End.
еще рефераты
Еще работы по разное
Реферат по разное
1. Склад змістовних модулів дисципліни, розподіл часу на їх засвєння, терміни контролю
18 Сентября 2013
Реферат по разное
Последние тенденции развития мировой экономики
18 Сентября 2013
Реферат по разное
Задачи отраслевого профсоюза в свете решений XIX всесоюзной партийной конференции. № С. 8-10. Вольное А. А
18 Сентября 2013
Реферат по разное
Разработка программы предпроектного обследования библиотеки как объекта автоматизации с. А. Сбитнев
18 Сентября 2013