Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Project1;
- {$APPTYPE CONSOLE}
- {$R *.res}
- uses
- System.SysUtils;
- type
- tNums = array of array of integer;
- tInput = (ChooseKeyboard, ChooseFile);
- function ReadMatrFromFile(mass: tNums; path: String): tNums;
- var
- size, cols, rows: integer;
- f: textfile;
- begin
- AssignFile(f, path);
- Reset(f);
- ReadLn(f, size);
- SetLength(mass, size, size);
- for rows := 0 to High(mass) do
- begin
- for cols := 0 to High(mass) do
- begin
- Read(f, mass[rows,cols]);
- Write(' ', mass[rows,cols]);
- end;
- Writeln('');
- end;
- Writeln('--------------------');
- Result := mass;
- end;
- function SumOfMatrs(Firstmass, Secondmass: tNums; size: integer): tNums;
- var
- rows, cols: integer;
- begin
- Firstmass := ReadMatrFromFile(Firstmass, 'c:\Users\Богданчик\Documents\laba\matrix1.txt');
- Secondmass := ReadMatrFromFile(Secondmass, 'c:\Users\Богданчик\Documents\laba\matrix2.txt');
- Writeln('Полученная сумма матриц: ');
- for rows := 0 to high(Firstmass) do
- begin
- for cols := 0 to high(Firstmass) do
- begin
- Firstmass[rows, cols] := Firstmass[rows, cols] + Secondmass[rows, cols];
- Write(' ', Firstmass[rows, cols]);
- end;
- Writeln;
- end;
- Result := Firstmass;
- end;
- procedure SaveMatrSumInFile(Firstmass: tnums);
- var
- rows, cols: integer;
- f: textfile;
- begin
- AssignFile(f,'c:\Users\Богданчик\Documents\laba\matrixSum.txt');
- Rewrite(f);
- for rows := 0 to high(FirstMass) do
- for cols := 0 to high(FirstMass) do
- Write(f,FirstMass[rows,cols]);
- Writeln;
- Closefile(f);
- Writeln('Файл сохранен.');
- end;
- var
- massSum: tnums;
- mass1: tNums;
- mass2: tNums;
- size: integer;
- begin
- Writeln('Данная программа складывает две треугольные матрицы, в которых только элементы над главной диагональю отличны от нуля, порядка n.');
- SumOfMatrs(mass1, mass2, size);
- SaveMatrSumInFile(massSum);
- Readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement