Удалить из файла первую отрицательную компоненту - Pascal ABC
Формулировка задачи:
Помогите пожалуйста с задачей
Ввести файл. Удалить из него первую отрицательную компоненту. Файл вывести
Решение задачи: «Удалить из файла первую отрицательную компоненту»
textual
Листинг программы
Program lab_10; uses crt; var f: file of integer; ineg,neg,a,n,i:integer; begin clrscr; ineg:=-1; assign (f, 'File1'); rewrite(f); writeln ('Vvedite chislo elementov faila.'); readln (n); writeln ('Vvedite elementy fajla'); for i:= 1 to n do begin readln (a); write (f,a); end; clrscr; writeln('Soderzanie ishodnogo fajla:'); reset (f); for i:=0 to filesize(f)-1 do begin read (f,a); write(a,' '); end; reset (f); for i:=0 to filesize(f)-1 do begin read (f,a); if a<0 then begin neg:=a; ineg:=i; break; end; end; writeln; writeln ('1 otrizatelny element= ', neg,' nomer=',ineg+1); if ineg<0 then begin writeln('Net otrizatelnix'); readln; exit; end; if ineg=filesize(f)-1 then begin seek(f,filesize(f)-1); truncate(f); end else begin for i:=ineg+1 to filesize(f)-1 do begin seek(f,i); read(f,a); seek(f,i-1); write(f,a); end; seek(f,filesize(f)-1); truncate(f); end; seek(f,0); writeln('Udalenie otr:'); while not Eof(f) do begin read (f,a); write(a,' '); end; close (f); readln; end.
Объяснение кода листинга программы
- Создается программа lab_10, которая использует язык программирования Pascal ABC.
- В программе используется файл 'File1' для чтения и записи данных.
- Переменная ineg инициализируется значением -1.
- Переменная f используется для работы с файлом.
- Число элементов файла вводится пользователем.
- Чтение и запись данных в файл происходит в цикле for i := 1 до n do.
- Числа считываются из файла и записываются в переменную a.
- Цикл прерывается, если число a меньше 0.
- Если число a меньше 0, то оно сохраняется в переменной neg, а номер i сохраняется в переменной ineg.
- Если в файле есть хотя бы одно отрицательное число, программа выводит сообщение об этом и завершается.
- Если в файле нет отрицательных чисел, программа продолжает работу.
- Если в файле есть только один элемент, программа удаляет его, используя функции seek и truncate.
- Если в файле больше одного элемента, программа перезаписывает его, считывая и записывая данные в файл.
- Программа завершается после того, как все элементы файла были прочитаны и записаны.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д