• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Помогите с матрицой

  • Автор темы kostya
  • Дата начала
K

kostya

Здравствуйте, помогите решить задачку на паскале... никак не получается решить(
Есть одномерный масив X, из n элементов. Получить квадратную матрицу вида

х1 х2 ... хn
xn x1 ... xn-1
.................

x2 x3 ... x1

Заранее благодарен
 
K

kostya

Код:
for i:=1 to 1 do begin
for j:=n downto 1 do
if j=n then q:=a[n] else begin
a[j+1]:=a[j];
end;
a[1]:=q;
//mas[1,j]:=a[j];
//for i1:=1 to n do begin
//for j1:=1 to n do begin
mas[1,j]:=a[i];
stringgrid1.Cells[i,j]:=inttostr(mas[i,j]);
//memo2.lines.add(inttostr(a[n]));
end;

end;

пытался сделать но ошибки выдает, может сможете переделать...?
 
D

Dock1100

Если я правильно понял условие то вот(на паскале,если надо на делфи, то отпишитесь, либо сами переведите):
Код:
const n=10;
var a:array[1..n] of integer;
b:array[1..n,1..n] of integer;
i,j,k,t:integer;
begin
for i:=1 to n do
a[i]:=i;

for i:=1 to n do
for j:=1 to n do
begin
k:=j-i+1;
if k>n then k:=k-n;
if k<=0 then k:=k+n;
b[i,j]:=a[k];
end;

for i:=1 to n do
begin
write(' ');
for j:=1 to n do
write(b[i,j],' ');
writeln;
end;
readln;
end.
вход:
1 2 3 4 5 6 7 8 9 10
выход:
1 2 3 4 5 6 7 8 9 10
10 1 2 3 4 5 6 7 8 9
9 10 1 2 3 4 5 6 7 8
8 9 10 1 2 3 4 5 6 7
7 8 9 10 1 2 3 4 5 6
6 7 8 9 10 1 2 3 4 5
5 6 7 8 9 10 1 2 3 4
4 5 6 7 8 9 10 1 2 3
3 4 5 6 7 8 9 10 1 2
2 3 4 5 6 7 8 9 10 1
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!