Menu
Coddy logo textTech

Basi degli array 2D

Fa parte della sezione Logica e flusso del percorso Ruby di Coddy. Lezione 10 di 56.

Un array 2D è un array i cui elementi sono a loro volta array. Ogni array interno rappresenta una riga in una griglia.

cinema = [
  [true,  true],   # Riga 0
  [false, true]    # Riga 1
]

Questa rappresenta una griglia 2×2, con due righe, ciascuna con due colonne.

Per creare una griglia 3×4 di numeri interi:

matrix = [
  [ 1,  2,  3,  4],
  [ 5,  6,  7,  8],
  [ 9, 10, 11, 12]
]

Puoi creare una griglia riempita con un valore predefinito usando Array.new due volte, una per le righe e una per le colonne:

grid = Array.new(3) { Array.new(4, 0) }
# 3 righe, 4 colonne, tutti zeri

La forma con blocco ({ Array.new(4, 0) }) è importante: crea un nuovo array interno per ogni riga. Senza di essa, ogni riga punterebbe allo stesso array.

challenge icon

Sfida

Facile

Leggi due numeri interi (due righe di input): rows e cols. Crea un array 2D di quelle dimensioni, in cui ogni cella è uguale a row * cols + col + 1 (quindi la prima riga conta a partire da 1 e la griglia si riempie nell'ordine di lettura).

Stampa la griglia usando inspect sull'array esterno, su una riga.

Per l'input 2 seguito da 3, l'output è:

[[1, 2, 3], [4, 5, 6]]

Provalo tu

rows = gets.to_i
cols = gets.to_i

# TODO: crea la griglia e stampala con inspect
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore Ruby online