2014-03-29 69 views
0

我知道兩個維數組是如何在pascal中工作的[行,列]。三維數組顯示錶

三個或更多維度如何工作?請幫忙,謝謝。

一個[行,列,???]

+0

'一個[行,列,架]'如果這不是你期待一個答案,你應該解釋很多更清楚你所期望的。 –

+0

我想製作一張貸款表,這是正確的任務嗎? a [0,0,0]:= 1000; // loan a [0,1,0]:= 500; //首付1 a [0,1,1]:= 42; // kredit 12x a [0,1,2]:= 21; // kredit 24x a [1,0,0]:= 2000; //貸款2 – user2577399

+0

尺寸都在那裏。即使我們不知道該怎麼稱呼他們。 :) – lurker

回答

0

的一個維陣列被聲明爲array[lowIndex..HighIndex] of <type>,如在

intArray: array[0..9] of integer; 

的二維陣列被簡單地包含數組的數組,如:

twoDim: array[0..9,0..9] of integer; 

您使用索引引用它:

twoDim[0,0] := 1; 
twoDim[0,1] := 2; 

三維陣列簡單地擴展了二維的,因爲在此聲明:

threeDim: array[0..9,0..9,0..9] of integer; 

還與索引使用它,以同樣的方式:

threeDim[0,0,0] := 1; 
threeDim[9,0,1] := 12; 

據作爲稱爲個人維度的內容,使用與他們所服務的目的相關的名稱。舉例來說,如果我每天都保持每小時讀數的數組的東西超過一個星期的四個星期期間,我可以聲明數組爲:

Readings: array[1..4,1..7,1..24] of integer; 

然後我可以聲明變量命名索引:

var 
    Week, Day, Hour; Integer; 

我可以很容易地引用數組的三個維度。對他們來說,所有的初始化爲零,比如,我可以做這樣的事情:

for Week := 1 to 4 do 
    for Day := 1 to 7 do 
    for Hour := 1 to 24 do 
     Readings[Week, Day, Hour] := 0;