File24. Дан файл вещественных чисел. Создать файл целых чисел, содержащий длины всех монотонных последовательностей элементов исходного файла. Например, для исходного файла с элементами $$1.7, 4.5, 3.4, 2.2, 8.5, 1.2$$ содержимое результирующего файла должно быть следующим: $$2, 3, 2, 2$$.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
program File24; var S:String; F_in: File of Real; F_out: File of Integer; El1,El:Real; len,check:integer; begin Write('File: '); Readln(S); Assign(F_in,S); Reset(F_in); Write('File_out: '); Readln(S); Assign(F_out,S); ReWrite(F_out); Read(F_in,El1); Read(F_in,El); if El1>El then check:=1; if El1<El then check:=-1; if El1=El then check:=0; len:=2; while (not eof(F_in)) do begin El1:=El; Read(F_in,El); if (El1>El) and (check=-1) then inc(len) else if (El1<El) and (check=1) then inc(len) else if (El1>El) and (check=1) then begin Write(F_out,len); check:=-1; len:=2; end else if (El1<El) and (check=-1) then begin Write(F_out,len); check:=1; len:=2; end else if (El1=El) then begin Write(F_out,len); check:=0; len:=2; end; end; Close(F_in); Close(F_out); end. |
Другие задачи из раздела File можно посмотреть здесь.
Комментарии:
Комментарии 1