| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Object Pascal: кроссплатформенные технологии > Помоги построить блок схемы по коду программы |
| Автор: angel9630 29.4.2013, 16:24 |
| Помогите построить блок схему к этому коду программы!пожалуйста,а то через программу не строиться.ошибку выдает( uses crt; const nmax=20; var n:byte; type Tmatr=array[1..nmax,1..nmax] of integer; procedure Vvod(var mt:Tmatr;c:string); var i,j:byte; begin writeln('введите ',n*n,' элементов матрицы ',c); for i:=1 to n do for j:=1 to n do begin write('el[',i,',',j,']='); readln(mt[i,j]); end; clrscr; end; procedure Vyvod(var mt:Tmatr;c:string); var i,j:byte; begin writeln(c,':'); for i:=1 to n do begin for j:=1 to n do write(mt[i,j]:5); writeln; end; writeln; end; procedure UmnMatrab(m1,m2:Tmatr;var m:Tmatr); var i,j,k:byte; begin for k:=1 to n do for j:=1 to n do begin m[k,j]:=0; for i:=1 to n do m[k,j]:=m[k,j]+m1[k,i]*m2[i,j]; end; end; procedure SumMatr(m1,m2:Tmatr;var m:Tmatr); var i,j:byte; begin for i:=1 to n do for j:=1 to n do m[i,j]:=m1[i,j]+m2[i,j]; end; procedure UmnMatrba(m1,m2:Tmatr;var m:Tmatr); var i,j,k:byte; begin for k:=1 to n do for j:=1 to n do begin m[k,j]:=0; for i:=1 to n do m[k,j]:=m[k,j]+m2[k,i]*m1[i,j]; end; end; var a,b,c:Tmatr; w:char; begin clrscr; randomize; write(‘введите размер матрицы n='); readln(n); Vvod(a,'A'); Vvod(b,'B'); Vyvod(a,'Matrica A'); Vyvod(b,'Matrica B'); write('Press Enter...'); readln; repeat clrscr; Vyvod(a,'Matrica A'); Vyvod(b,'Matrica B'); writeln('выберите действие’); writeln('1-сложение A+B'); writeln('2-умножение A*B'); writeln('3-умножение B*A'); writeln('выход'); write('w=');readln(w); case w of '1':begin SumMatr(a,b,c); Vyvod(c,'ответ C=A+B'); write('Press Enter...'); readln end; '2':begin UmnMatrab(a,b,c); Vyvod(c,'ответ C=A*B'); write('Press Enter...'); readln end; '3':begin UmnMatrba(a,b,c); Vyvod(c,'ответ C=B*A'); write('Press Enter...'); readln end; else exit; end; until not(w in ['1'..'3']); end. |