Удаление повторных чисел из файла в Паскале
Привет! Меня зовут Алексей, и я хочу поделиться с тобой своим опытом удаления повторных чисел из файла в программе на языке Паскаль․
Сначала нам нужно открыть файл f и прочитать его содержимое․ Для этого воспользуемся функцией Assign, чтобы связать файловую переменную с нужным файлом․
var
nnbsp;nnbsp;nnbsp;nnbsp;f, g⁚ Text;
nnbsp;nnbsp;nnbsp;nnbsp;numberList⁚ array of Integer;
nnbsp;nnbsp;nnbsp;nnbsp;i, j, num⁚ Integer;
begin
nnbsp;nnbsp;nnbsp;nnbsp;Assign(f, 'input․txt');
nnbsp;nnbsp;nnbsp;nnbsp;Reset(f);
Затем создадим массив numberList
, в котором будем хранить уникальные числа из файла f․ Переберем все числа в файле и добавим их в массив, если они не были добавлены ранее․
SetLength(numberList, 0);
while not EOF(f) do
nnbsp;nnbsp;nnbsp;nnbsp;begin
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;Read(f, num);
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;if not (num in numberList) then
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;begin
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;SetLength(numberList, Length(numberList) 1);
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;numberList[Length(numberList)-1] ⁚ num;
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;end;
nnbsp;nnbsp;nnbsp;nnbsp;end;
Теперь у нас в массиве numberList хранятся все уникальные числа из файла f․ Сохраним эти числа в файле g․
Assign(g, 'output․txt');
nnbsp;nnbsp;nnbsp;nnbsp;Rewrite(g);
for i ⁚ 0 to Length(numberList)-1 do
nnbsp;nnbsp;nnbsp;nnbsp;begin
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;Write(g, numberList[i]);
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;if i < Length(numberList)-1 then
nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;nnbsp;Write(g, ' ');
nnbsp;nnbsp;nnbsp;nnbsp;end;
В конце работы с файлами обязательно закрываем их․
Close(f);
nnbsp;nnbsp;nnbsp;nnbsp;Close(g);
Готово! Теперь в файле g будет содержаться список чисел из файла f без повторных вхождений․ Удачи!