Заполнить двоичный файл целыми числами из интервала [-3000; 8000]. количество компонент файла вводится с клавиатуры. поменять местами в файле первый нечетный по значению компонент и последний четный. 1) тест для работы 2) написать простой алгоритм 3) код программы 4) скрин шот 5) заключение (какие логические ошибки)
120
386
Ответы на вопрос:
Var i,n,fs,ls: integer; fsz,indf,indl: int64; f: file of integer; begin write('n = '); readln(n); // запись в файл целых чисел assign(f,'input.txt'); rewrite(f); for i: =1 to n do write(f,random(-3000,8000)); close(f); // замена элементов в файле assign(f,'input.txt'); reset(f); fsz: =filesize(f); indf: =0; for i: =0 to fsz-1 do begin read(f,n); if ((n mod 2)< > 0) and (indf=0) then begin indf: =i; fs: =n; end; if (n mod 2)=0 then begin indl: =i; ls: =n; end; end; reset(f); seek(f,indf); write(f,ls); reset(f); seek(f,indl); write(f,fs); close(f); end.
// pascalabc.net 3.3, сборка 1634 от 14.02.2018 // внимание! если программа не работает, обновите версию! begin var fn: ='mtfile.bin'; var n: =readinteger; var f: file of integer; var s: =seqrandom(n,-3000,8000); // последовательность не хранится rewrite(f,fn); foreach var m in s do write(f,m); f.close; // файл создан и закрыт reset(f,fn); var b: integer; // буфер while not eof(f) do begin read(f,b); print(b) end; writeln; seek(f,0); // стали в начало файла read(f,b); var iodd: =0; while not eof(f) and b.iseven do begin read(f,b); iodd+=1 end; if eof(f) and b.iseven then begin writeln('нет нечетных компонентов'); exit end; var (bb,ieven): =(b,n); repeat ieven-=1; seek(f,ieven); read(f,b) until (ieven=1) or b.iseven; if b.isodd then begin writeln('нет четных компонентов'); exit end; seek(f,ieven); write(f,bb); seek(f,iodd); write(f,b); seek(f,0); while not eof(f) do begin read(f,b); print(b) end; writeln; f.close end. пример 10 3166 6355 3596 6926 1266 6143 7401 7624 1402 -627 3166 1402 3596 6926 1266 6143 7401 7624 6355 -627
Есть несколько таких сфер: 1)теле-, радио-, интернет-вещание, печатные издания специализированных организаций. 2)я работаю-в сфере(журналистика) 3)сми (обеспечивают массовое публичное распространение информации) и т.д.
Популярно: Информатика
-
Милая813.04.2022 01:00
-
QueenMarceline19.10.2022 10:21
-
Foxmem31.10.2020 05:53
-
13113303.03.2022 19:56
-
minohbli220725.05.2021 21:16
-
Angel2864825.01.2023 09:20
-
dieric11.08.2021 12:12
-
Anastasia272726.05.2023 22:15
-
Гектор3118.12.2020 10:03
-
adelya63Ada20.08.2020 05:28