Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.30;
Скачать: CL | DM;

Вниз

Массивы   Найти похожие ветки 

 
Толян ©   (2005-10-06 17:37) [0]

Народ подскажите как мне заполнить двухмерный массив данным образом

1  2  3  4  5  6  7  8  9       10
35 36 37 38 39 40 41 42 43 11
34 64 65 66 67 68 69 70 44 12
33 63                      71 45 13
32 62                      72 46 14
31 61          100       73 47 15
30 60                     74 48 16
29 59 80  79 78 77 76 75 49 17
28 58 57 56 54 53 52 51 50 18
27 26  25  24  23  22  21 20 19
и так до центра  помогите пожалуста


 
IceBeerg ©   (2005-10-06 17:44) [1]

Толян ©   (06.10.05 17:37)
В циклах (For!).
Но баян.


 
default ©   (2005-10-06 17:49) [2]

для этого в языке программирования должен быть спиралевидный for:)
классическая олимпиадная задачка по информатике:)


 
Толян ©   (2005-10-06 17:50) [3]

ну эт понятно а дальше такая трабла пипец!!!


 
han_malign ©   (2005-10-06 17:53) [4]

Сколькими способами?

З.Ы. Если не можешь самостоятельно решить практическое задание, стоит подумать о переводе на другую специальность...


 
Толян ©   (2005-10-06 17:53) [5]

как ее зделать после фора


 
Толян ©   (2005-10-06 17:54) [6]

хоть какими


 
clickmaker ©   (2005-10-06 17:57) [7]

включай мозг, Толян. Это ж даже не программирование, а алгебра


 
default ©   (2005-10-06 17:57) [8]

Толян ©   (06.10.05 17:54) [6]
так и обводи по спирали в цикле...горизонталь, вертикаль, ...


 
default ©   (2005-10-06 18:23) [9]

нужен код для обвода рамки заданного размера с заданного числа
далее вызываешь его в цикле for  для разных размеров и разных чисел


 
Zeqfreed ©   (2005-10-06 19:02) [10]

Толян ©   (06.10.05 17:37)

const
MAX_X = 9;
MAX_Y = 9;

var
...
ar : array[0..MAX_X, 0..MAX_Y] of Integer;

...

procedure TfrmMain.btnFillClick(Sender: TObject);
var
i, j : Integer;
num : Integer;
mx, my, xtr, ytr : Integer;
begin
i := -1;
j := 0;
num := 1;

xtr := 0;
ytr := 1;
mx := MAX_X;
my := MAX_Y;

repeat
 while i < mx do begin
  Inc(i);
  ar[i, j] := num;
  Inc(num);
 end;

 while j < my do begin
  Inc(j);
  ar[i, j] := num;
  Inc(num);
 end;

 while i > xtr do begin
  Dec(i);
  ar[i, j] := num;
  Inc(num);
 end;

 while j > ytr do begin
  Dec(j);
  ar[i, j] := num;
  Inc(num);
 end;

 Inc(ytr);
 Inc(xtr);
 Dec(mx);
 Dec(my);
until (mx = MAX_X div 2) or (my = MAX_Y div 2);
end;


Впредь обещай заниматься более прилежно.



Страницы: 1 вся ветка

Текущий архив: 2005.10.30;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.061 c
14-1129120736
CHES
2005-10-12 16:38
2005.10.30
Помогите с переводом


3-1126689889
dpv
2005-09-14 13:24
2005.10.30
Огромная база, при Conect уходит много времени.


3-1127240244
WonderfulDay
2005-09-20 22:17
2005.10.30
базы в локальной сети


14-1128680608
__DATA__
2005-10-07 14:23
2005.10.30
Для чего исползуется протокол NetBios?


1-1128380544
kristina_
2005-10-04 03:02
2005.10.30
Image+Label=print :)