Metodi degli array
Fa parte della sezione Fondamenti del percorso Ruby di Coddy. Lezione 61 di 88.
Ruby fornisce diversi metodi integrati che semplificano l'uso degli 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 # Restituisce: 1, 1, 3, 4, 5Per invertire l'ordine degli elementi, usa il metodo reverse:
letters = ["a", "b", "c"]
puts letters.reverse # Stampa: c, b, aPuoi combinare questi metodi per ordinare in ordine decrescente:
scores = [85, 92, 78, 95]
puts scores.sort.reverse # Restituisce: 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 # Outputs: 8
puts prices.max # Outputs: 42Per calcolare il totale degli elementi numerici, usa sum:
quantities = [2, 5, 3]
puts quantities.sum # Restituisce: 10Nota che sort e reverse restituiscono nuovi array senza modificare l’originale. Per modificare direttamente l’array originale, aggiungi ! al nome del metodo, come in sort! o reverse!.
Sfida
FacileLeggi una singola riga di input contenente numeri interi separati da virgole (ad es., 5,2,8,1,9,3).
Dividi l’input in un array di numeri interi, quindi stampa quanto segue su righe separate:
- L’array ordinato in ordine crescente (ogni elemento su una riga separata)
- L’array ordinato in ordine decrescente (ogni elemento su una riga separata)
- 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
# TODO: Scrivi il tuo codice qui sotto
# 1. Suddividi input in un array di interi
# 2. Ordina l'array in ordine crescente e stampa ogni elemento
# 3. Stampa una riga vuota
# 4. Ordina l'array in ordine decrescente e stampa ogni elemento
# 5. Stampa una riga vuota
# 6. Stampa il valore minimo
# 7. Stampa il valore massimo
# 8. 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