Переписать числа в выходной файл в обратном порядке - Pascal ABC
Формулировка задачи:
Помогите пожалуйста написать программы:
1. Во входном файле первая строка – количество чисел, во второй строке – сами числа. В выходной файл вывести в первую строку – нечетные числа, имеющиеся со второй строке входного файла. Во вторую строку вписать их количество.
2. Во входном файле первая строка – количество чисел, во второй строке – сами числа (<1000). Переписать эти числа в выходной файл в обратном порядке.
3. В файле первая строка – количество чисел, во второй строке – сами числа (<1000). В этом же файле в следующей строке записать все числа второй строки, увеличив каждое на 1.
Я пытался...не получается...
Решение задачи: «Переписать числа в выходной файл в обратном порядке»
textual
Листинг программы
var f,g:text; n,i,a,k:integer; begin assign(f,'input.txt'); reset(f); assign(g,'output.txt'); rewrite(g); read(f,n); k:=0; for i:=1 to n do begin read(f,a); if odd(a) then begin write(g,' ',a); inc(k); end; end; close(f); if k=0 then writeln(g,'Нечетных чисел нет') else begin writeln(g); writeln(g,k); end; close(g); write('Файл input прочитан, результат записан в файл output') end.
Объяснение кода листинга программы
- Создаются две переменные типа text: f и g.
- Задается имя файла f как 'input.txt' и имя файла g как 'output.txt'.
- В файле f с помощью функции assign устанавливается режим чтения.
- В файле g с помощью функции rewrite устанавливается режим записи.
- Считывается число n из файла f.
- Создается переменная k типа integer и инициализируется значением 0.
- Запускается цикл for, который выполняется n раз.
- На каждой итерации цикла считывается число a из файла f.
- Проверяется, является ли число a нечетным с помощью функции odd.
- Если число a нечетное, то записывается в файл g с помощью функции write.
- Инкрементируется значение переменной k.
- После завершения цикла закрываются файлы f и g с помощью функций close.
- Выводится сообщение в зависимости от значения переменной k.
- Завершается программа.