Цветовая схема:
C C C C
Шрифт
Arial Times New Roman
Размер шрифта
A A A
Кернинг
1 2 3
Изображения:
  • ХМАО - Югра, г. Нижневартовск
  • +7 (904) 483-50-68
  • sammitportal@mail.ru

10В класс: Информатика от 20.04.2020

10класс.jpg

На прошлом занятии мы разобрались как в Паскале использовать текстовые файлы. Сегодня давайте попробуем совместить известные нам методы сортировки массивов и работу с файлами.
Рассмотрим решение этой проблемы на примере следующей задачи:
Задача. В файле записано не более 100 целых чисел. Вывести в другой текстовый файл те же числа, отсортированные в порядке возрастания.
Для сортировки данных из файла нужно будет их все занести в массив, для этого его нужно описать:
const MAX=100;
var A: array[1..MAX] of integer;
Следующая задача - заполнение массива из файла. Вот пример, как это сделать...
var N: integer;  Fin: Text;
...
Assign(Fin,'input.txt');
Reset(Fin);
N:= 0;
while (not Eof(Fin)) and (N < MAX) do
 begin
   N:= N + 1;
  readln(Fin, A[N]);  
 end;
Close(Fin);
Процесс сортировки не изменился, у вас есть достаточно примеров сортировки массивов разными способами.
И последняя задача, вывод отсортированного массива в файл.
var Fout: Text;
...
Assign(Fout, 'output.txt');
Rewrite(Fout);
for i:= 1 to N do writeln(Fout, A[i]);    
Close(Fout);

Задания для самостоятельного выполнения:

«A»: В файле записано не более 100 чисел. Отсортировать их по возрастанию последней цифры и записать в другой файл.
«B»: В файле записано не более 100 чисел. Отсортировать их по возрастанию суммы цифр и записать в другой файл. Используйте функцию, которая вычисляет сумму цифр числа. (эту функцию мы уже неоднократно использовать)
«C»: В двух файлах записаны отсортированные по возрастанию массивы неизвестной длины. Объединить их и записать результат в третий файл. Полученный массив также должен быть отсортирован по возрастанию.

Обращаю ваше внимание, что метод сортировки не указан, поэтому это на ваш выбор.

Текст программы вставляем в комментарий к этому сообщению, в теме указываем Фамилию, Имя и уровень задачи.
Удачи!
Внимание! Работы принимаю сегодня до 20.00!