Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Napíšte kostru metódy . Táto metóda bude trvať niekoľko kótovacích argumentov a vracia prázdnu viacrozmerné polia týchto rozmerov . Napríklad , pre 10x10 polia , volanie tejto metódy MDA ( 10,10 ) : def MDA ( šírka , výška ) end
2
Vytvorte pole šírky prvkov
< . br > 3
Vytvorte rad výškových prvkov pre každý prvok v poli . To robí " pole polí " , ktorá bude použitá ako dvojrozmerné pole . Ak chcete vytvoriť prázdne pole na konkrétnu dĺžku , použite Array.new konštruktor s dĺžkou ako argument . Spočiatku , budú všetky hodnoty v poli nulová .
4
Pomocou mapy ! Spôsob , ako dobre . Mapa ! metóda opakuje každý prvok v poli , spustí blok pre každého a priradí výsledok bloku do prvku poľa . Rovnaký výsledok sa dá dosiahnuť za použitia pre slučky , ale mapa ! Metóda je výstižnejší : def MDA ( šírka , výška ) = Array.new ( šírka ) a.map ! { Array.new ( výška ) } return AEND
5
Pomocou tohto poľa s indexom ( hranaté zátvorky [ ] ) operátora . Napríklad , ak ste mali 10x10 pole s názvom " " a chcel 7,3 prvok , by ste povedali , [ 7 ] [ 3 ] : = mda ( 10,10 ) # Vyplňte pole s values [ 7 ] [ ,"5 ] = " string " [ 2 ] [ 9 ] = 23 # Načítať valuesputs [ 7 ] [ 5 ] dá [ 2 ] [ 9 ]
6
Využite možnosti metóda " reťaz " volá v Ruby . Napríklad metóda Array.new vráti maticu . Môžete reťaz ďalšie volanie metódy na ktoré volať metódu na vrátenej maticu . Vzhľadom k tomu , že ste reťazenie metód , a to pomocou príkazu return , nemusíte názov premennej buď : def MDA ( šírka , výška ) Array.new ( šírka ) mapa { Array.new ( výška ) } end . !