Другие языки программирования и технологии

ПОмогите решить программирование.

В задаче сформировать квадратную матрицу порядка и
по заданному образцу:
И в чем проблема?
Максим Богоявленский
Максим Богоявленский
8 860
Лучший ответ
Анатолий Шмелев оставить программу в Паскаль и нарисовать блок схему
Длинный оптимизированный вариант:

{формируем первую строку}
for i := 1 to n do a[1, i] := 1;
{формируем вторую строку}
a[2, 1] := 1; a[2, n] := 1;
for i := 2 to n -1 do a[2, i] := 0;
{копируем первую строку в последнюю}
a[n] := a[1];
{копируем вторую строку в строки 3..n-1}
for i := 3 to n -1 do a[i] := a[2];

Самый короткий вариант, какой удалось придумать, работающий в стандартном Pascal:

for i := 1 to n do for j := 1 to n do a[i, j] := odr([i, j] * [1, n] <> []);

Подробности: http://comp-science.narod.ru/Progr/mn.htm

Программа целиком:

var
a: array[1..255, 1..255] of integer;
i, j, n: integer;
begin
readln(n);
for i := 1 to n do begin
for j := 1 to n do begin
a[i, j] := odr([i, j] * [1, n] <> []);
write(a[i, j]: 2)
end;
writeln
end
end.
var a:array[1..30,1..30]of integer; i,j,n:integer;
begin
write('n: '); readln(n);
for i:=1 to n do for j:=1 to n do a[i,j]:=1;
for i:=2 to n-1 do for j:=2 to n-1 do a[i,j]:=0;
for i:=1 to n do begin for j:=1 to n do write(a[i,j]:3); writeln end;
end.
Олег Бочкин Как он стал "лучшим ответом"?! Ересь полная!
Кто голосует за такую чушь?!
Теперь все ясно, как здесь люди себе аккаунты поднимают! ))
Правильные ответы не в почете (
На этом все... высказалась .. поделилась! ))
На мое высказывание можно не отвечать )))
Давай сюда всю книгу-задачник, что уж мелочиться.
program matrix; var k,l,n,nm:integer; a:array [1..1000,1..1000] of real; begin write('Введите порядок матрицы (от 1 до 1000 включительно !)'); readln(n); nm:=n-1; if (n<1) or (n>1000) then writeln('Неправильный ввод.'); if n=1 then a[1,1]:=1; if n=2 then begin a[1,1]:=1; a[1,2]:=1; a[2,1]:=1;a[2,2]:=1; if n>2 then for k:=1 to n do begin a[1,k]:=1; a[n,k]:=1; a[k,1]:=1; a[k,n]:=1 end; for k:=2 to nm do for l:=2 to nm do a[k,l]:=0; writeln('Матрица сформирована.') end.

{Эта программа просто строит квадратные матрицы n×n с вещественными единицами по первым и n-ным строкам и столбцам с нулевыми остальными элементами, если они есть (при n=1 и 2 их, естественно, нет!). Больше она ничего не делает, зато можно проверить- за какое время программа выполнит все действия, а её порядок можно сделать и больше 1000.

А вот с блок-схемой туго- она получается слишком громоздкая! }
Turebai Issekenov
Turebai Issekenov
28 648