Metodi degli array
Fa parte della sezione Fondamenti del percorso Ruby di Coddy. Lezione 61 di 88.
Ruby offre diversi metodi integrati che semplificano il lavoro con gli array. Questi metodi ti aiutano a ordinare, invertire e trovare elementi senza dover scrivere codice complesso.
Il metodo sort dispone gli elementi in ordine crescente:
numbers = [3, 1, 4, 1, 5]
puts numbers.sort # Output: 1, 1, 3, 4, 5Per invertire l'ordine degli elementi, usa il metodo reverse:
letters = ["a", "b", "c"]
puts letters.reverse # Mostra: c, b, aPuoi combinare questi metodi per ordinare in ordine decrescente:
scores = [85, 92, 78, 95]
puts scores.sort.reverse # Izpiše: 95, 92, 85, 78I metodi min e max trovano rapidamente i valori più piccoli e più grandi:
prices = [29, 15, 42, 8]
puts prices.min # Stampa: 8
puts prices.max # Stampa: 42Per calcolare il totale degli elementi numerici, usa sum:
quantities = [2, 5, 3]
puts quantities.sum # Stampa: 10Nota che sort e reverse restituiscono nuovi array senza modificare l'originale. Per modificare direttamente l'array originale, aggiungi ! al nome del metodo, come sort! o reverse!.
Sfida
FacileLeggi una singola riga di input contenente interi separati da virgole (ad es., 5,2,8,1,9,3).
Dividi l’input in un array di interi, poi stampa quanto segue su righe separate:
- L’array ordinato in ordine crescente (ogni elemento su una riga)
- L’array ordinato in ordine decrescente (ogni elemento su una riga)
- Il valore minimo
- Il valore massimo
- La somma di tutti gli elementi
Stampa una riga vuota tra ogni sezione per maggiore chiarezza.
Ad esempio, se l’input è 5,2,8,1,9,3, l’output dovrebbe essere:
1
2
3
5
8
9
9
8
5
3
2
1
1
9
28Se l’input è 10,30,20, l’output dovrebbe essere:
10
20
30
30
20
10
10
30
60Se l’input è 7,3,5,1, l’output dovrebbe essere:
1
3
5
7
7
5
3
1
1
7
16Provalo tu
# Leggi gli interi separati da virgole
input = gets.chomp
# Dividi l'input in corrispondenza di ogni virgola e converti ogni parte in un intero
numbers = input.split(",").map(&:to_i)
# TODO: Scrivi il tuo codice qui sotto
# 1. Ordina l'array in ordine crescente e stampa ogni elemento
# 2. Stampa una riga vuota
# 3. Ordina l'array in ordine decrescente e stampa ogni elemento
# 4. Stampa una riga vuota
# 5. Stampa il valore minimo
# 6. Stampa il valore massimo
# 7. Stampa la somma di tutti gli elementiQuesta lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 3Operatori logici Parte 47Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire input dall'utente10FizzBuzz con un colpo di scena
Panoramica del giocoIl metodo FizzBuzz2Variabili e tipi di dato
Numeri e variabiliTipo di dato stringaTipo di dato booleanoTipo di dato SymbolVerifica dei tipi di datoConvenzioni di denominazioneRiepilogo - Creazione di variabili5Strutture decisionali
Istruzione ifIf-ElseRipasso - Calcolatrice sempliceIf-Else annidatoIstruzione unless8Cicli
Ciclo for con intervalliCiclo whilebreaknextRiepilogo - FattorialeCiclo timesCiclo untilCicli annidatiRiepilogo - Input dinamico3Operatori, parte 1
Operatori aritmeticiOperatore moduloScorciatoie aritmeticheRipasso: matematica sempliceOperatori di confronto6Input/Output di base
Output con putsOutput con print e pOutput con variabiliInput con getsMetodo chompConversione di tipoRipasso - Calcolatore dell'etàRipasso - Vero o falsoEsercitati da solo: Compilatore Ruby online