![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
___ALex___ |
![]()
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 282 Репутация: ![]() ![]() ![]() |
Народ, предложите своё решение...
1. Составить алгоритм заполнения прямоугольной таблицы размером N*N целыми числами от 1 до N*N по спирали. Пример для N=5. Цитата 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 2. Переставить две части массива А из n элементов, первая часть - элементы с номерами от 1 до m, вторая - от m+1 до n. При этом порядок элементов в каждой из частей должен быть сохранен и нельзя использовать дополнительные массивы. Пример. n=9, m=5 Вход: 9 4 7 2 3 5 8 1 6 Выход: 5 8 1 6 9 4 7 2 3 |
![]() ![]() |
Ivs |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 209 Репутация: ![]() ![]() ![]() |
Спираль:
Код program Spiral; uses crt; const h=6; var a:array[1..h,1..h] of integer; i,j,n,k,b,z,m:integer; begin ClrScr; n:=h; m:=1; z:=n; k:=1; i:=1;j:=1; for b:=1 to z*z do begin for j:=m to n do begin a[i,j]:=k; k:=k+1; end; k:=k-1; for i:=m to n do begin a[i,j]:=k; k:=k+1; end; k:=k-1; for j:=n downto m do begin a[i,j]:=k; k:=k+1; end; k:=k-1; m:=m+1; for i:=n downto m do begin a[i,j]:=k; k:=k+1; end; n:=n-1; end; for i:=1 to z do begin for j:=1 to z do write(a[i,j]:5); writeln; end; readln; end. Добавлено (12.01.03 21:12): Перестановка: Код const n=10; var i,j,x,m:integer; a:array[1..n] of integer; begin ClrScr; Randomize; for i:=1 to n do begin a[i]:=random(9)+1; write(a[i]:3); end; writeln; write('input m-> ');readln(m); for i:=1 to m do begin x:=a[1]; for j:=1 to n-1 do a[j]:=a[j+1]; a[n]:=x; end; for i:=1 to n do write(a[i]:3); readln; end. -------------------- Если вы хотите чаще встречаться с понравившейся девушкой установите ей Windows'95
|
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 7:22 |