Страница 1 из 1
Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 11:36
allexey
Сформировать квадратную матрицу порядка n по заданному образцу
2 1 1 … 1 1 1
0 2 1 … 1 1 1
0 0 2 … 1 1 1
……………..
0 0 0 … 0 2 1
0 0 0 … 0 0 2
Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 11:54
allexey
Program kv_matr;
uses crt;
const n=15;
var a:array[1..n] of integer;
i, j :integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
begin
if j=1 then a[i,j]:=2
else if j>1 then a[i,j]:=1
else a[i,j]:=0;
write (a[i,j]:2);
end;
writeln;
readln;
end.
Выдает ошибку. что здесь не так?
Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 12:26
somewhere
Выдает ошибку. что здесь не так?
Массив объявлен как одномерный. А еще есть ошибки в логике
Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 12:36
allexey
можешь исправить?
Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 12:40
somewhere
можешь исправить?
Могу конечно)) Только я запрограммирован исправлять только одну ошибку для одного задания - выбирай какую

Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 12:55
allexey
ошибки в логике)
Program kv_matr;
uses crt;
const n=15;
var a:array[1..n, 1..n] of integer;
i, j :integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
begin
if j=1 then a[i,j]:=2
else if j>1 then a[i,j]:=1
else a[i,j]:=0;
write (a[i,j]:2);
end;
writeln;
end;
readln;
end.
Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 13:08
allexey
получается
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
211111111111111
Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 13:09
allexey
а надо по другому
2 1 1 … 1 1 1
0 2 1 … 1 1 1
0 0 2 … 1 1 1
……………..
0 0 0 … 0 2 1
0 0 0 … 0 0 2
Re: Сформировать квадратную матрицу
Добавлено: 13 июн 2013, 13:39
somewhere
[syntax=delphi]
Program kv_matr;
uses crt;
const n=15;
var a:array[1..n, 1..n] of integer;
i, j :integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
begin
if j=i then a[i,j]:=2
else if j>i then a[i,j]:=1
else a[i,j]:=0;
write (a[i,j]:2);
end;
writeln;
end;
readln;
end.[/syntax]