File86. Дан файл вещественных чисел, содержащий ненулевую часть верхне треугольной матрицы (по строкам). Создать новый файл, содержащий все элементы данной матрицы (по строкам).
Решение:
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 |
program File86; var F_in,F_out: file of Real; len,i,j,i2,j2:integer; Cell:Real; Name:String; begin Write('File in: '); Readln(Name); Assign(F_in,Name); Write('File out: '); Readln(Name); Assign(F_out,Name); Reset(F_in); len:=0; While (not eof(F_in)) do begin Read(F_in,Cell); inc(len); end; Close(F_in); i2:=1; while (len>0) do begin len:=len-i2; inc(i2); end; len:=i2-1; Rewrite(F_out); Reset(F_in); I2:=0; J2:=0; While not eof(F_in) do begin if j2=len then begin inc(i2); Cell:=0; for j2:=1 to i2 do Write(F_out,Cell); end else inc(j2); Read(F_in,Cell); Write(F_out,Cell); end; Close(F_in); Close(F_out); end. |
Другие задачи из раздела File можно посмотреть здесь.
Комментарии: