Добавил:
cappie
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Lab3_var6_z2
.pas {type
reals = file of real;
var f : reals;
Напишите рекурсивную программу, которая печатает снача-
ла все отрицательные элементы этого файла, а затем положи-
тельные (в любом порядке).}
program lab3_var6_z2;
const N=10;// количество чисел
type
reals = file of real;
var
f: reals; //файл для вещественных чисел
i: integer; //Счетчик
x: real; // переменная для генерации случайных чисел
procedure SORT; // процедура печати сперва отрицательных чисел, затем положительных
var
chislo: real;
begin
if not eof(f) then begin
read(f, chislo); // читаем число из файла
if (chislo < 0) then // если число отрицательно,
begin
writeln(chislo:5:2,' '); // то печатаем его
SORT; // и запускаем рекурсию
end
else
begin
SORT; //иначе запускаем рекурсию,
writeln(chislo:5:2,' '); //а печать положительного числа откладываем
end;
end;
end;
begin
randomize; //инициализируем датчик случайных чисел
assign(f, 'lab3_var6_z2.dat'); //связываем файл с именем 'f'
rewrite(f); //открываем для записи
writeln('В файл записаны: ');
for i := 1 to N do
begin
x := (random(200) - 100) / 12.5;
write(f, x); // записываем в файл случайные положительный и отрицательные числа
writeln(x, ' ');
end;
reset(f);
Writeln();
Writeln('Результат: ');
SORT;
close(f);
end.
reals = file of real;
var f : reals;
Напишите рекурсивную программу, которая печатает снача-
ла все отрицательные элементы этого файла, а затем положи-
тельные (в любом порядке).}
program lab3_var6_z2;
const N=10;// количество чисел
type
reals = file of real;
var
f: reals; //файл для вещественных чисел
i: integer; //Счетчик
x: real; // переменная для генерации случайных чисел
procedure SORT; // процедура печати сперва отрицательных чисел, затем положительных
var
chislo: real;
begin
if not eof(f) then begin
read(f, chislo); // читаем число из файла
if (chislo < 0) then // если число отрицательно,
begin
writeln(chislo:5:2,' '); // то печатаем его
SORT; // и запускаем рекурсию
end
else
begin
SORT; //иначе запускаем рекурсию,
writeln(chislo:5:2,' '); //а печать положительного числа откладываем
end;
end;
end;
begin
randomize; //инициализируем датчик случайных чисел
assign(f, 'lab3_var6_z2.dat'); //связываем файл с именем 'f'
rewrite(f); //открываем для записи
writeln('В файл записаны: ');
for i := 1 to N do
begin
x := (random(200) - 100) / 12.5;
write(f, x); // записываем в файл случайные положительный и отрицательные числа
writeln(x, ' ');
end;
reset(f);
Writeln();
Writeln('Результат: ');
SORT;
close(f);
end.
Соседние файлы в предмете Основы алгоритмизации и программирования