我想显示用户填写的数组元素。我想将输出组织为矩阵。问题是这不会发生。虽然,水,逻辑上一切都是如此。可能是什么问题呢?
输入:
Введите число строк 1-й матрицы - A (<=50)--> 2
Введите число столбцов 1-й матрицы - A (<=50)--> 2
Введите число столбцов 2-й матрицы - B (<=50)--> 2
Введите 1-ю матрицу (A):
Введите A[1,1] --> 1
Введите A[1,2] --> 2
Введите A[32,1] -->
Введите A[2,2] --> 4
Введите 2-ю матрицу (B):
Введите B[1,1] --> 5
Введите B[1,2] --> 6
Введите B[2,1] --> 6
Введите B[2,2] --> 6
结论:
Матрица А.
[1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]Матрица А.
[1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]Матрица А.
[3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]Матрица А.
[3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]Матрица B.
[5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]Матрица B.
[5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]Матрица B.
[6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]Матрица B.
[6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] [6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
---- Результат: -----
17.00 18.00
39.00 42.00
编码:
Const Max=50;
Var AA,BB,CC: array [1..Max,1..Max] of Double;
ii,jj,kk,nn,mm,ll : integer; Summa: double;
begin
write('Введите число строк 1-й матрицы - A (<=50)--> ');readln(NN);
write('Введите число столбцов 1-й матрицы - A (<=50)--> ');readln(KK);
write('Введите число столбцов 2-й матрицы - B (<=50)--> ');readln(MM);
writeln('Введите 1-ю матрицу (A):');
for ii:=1 to nn do
for jj:=1 to kk do
begin
write('Введите A[',ii,',',jj,'] --> ');
readln(AA[ii,jj]);
end;
writeln('Введите 2-ю матрицу (B):');
for ii:=1 to kk do
for jj:=1 to mm do
begin write('Введите B[',ii,',',jj,'] --> '); readln(BB[ii,jj]);
end;
{проблема}
for ii:=1 to nn do
for jj:=1 to kk do
begin
writeln('Матрица А.');
write(AA[ii], ' ', AA[jj]);
end;
for ii:=1 to kk do
for jj:=1 to mm do
begin
writeln('Матрица B.');
write(BB[ii], ' ', BB[jj]);
end;
{Вычисляем элементы матрицы-результата}
for ii:=1 to nn do
for jj:=1 to mm do
begin
Summa:= 0;
for ll:= 1 to kk do
Summa:= Summa + AA[ii,ll]*BB[ll,jj];
CC[ii,jj] := Summa;
end;
{Выводим матрицу-результат:}
writeln();
writeln('---- Результат: -----');
for ii:=1 to nn do
begin
for jj:=1 to mm do
write(CC[ii,jj]:8:2);
writeln;
end;
readln;
end.
矩阵是二维的,但是这会将矩阵的
write(AA[ii], ' ', AA[jj]);两行作为一个整体显示——总大小为50。只显示必要的元素PS 另一个这样的时刻 - 在存在两位数的情况下,例如数字,格式化将失败。因此,最好在固定宽度的字段中使用输出。