Ripasso - Iterare sui dati
Fa parte della sezione Fondamenti del percorso PHP di Coddy. Lezione 53 di 71.
Sfida
FacileLeggi tre righe di input:
- Un elenco di interi separati da virgole (ad es.,
12,5,8,20,3,15,7) - Un valore soglia minimo
- Un valore soglia massimo
Elabora l'array per trovare la somma di tutti i numeri compresi nell'intervallo (inclusi sia il minimo sia il massimo). Per prima cosa, controlla se un numero è esattamente il doppio della soglia massima e, in tal caso, interrompi immediatamente con break. Altrimenti, usa continue per saltare i numeri fuori dall'intervallo.
La prima riga viene letta con explode, quindi $numbers contiene stringhe, mentre $min e $max sono interi. Converti ogni elemento con intval() (o con un cast (int)) prima di confrontarlo con le soglie o aggiungerlo alla somma.
Stampa due righe:
- La somma dei numeri validi compresi nell'intervallo
- Il conteggio dei numeri aggiunti alla somma
Esempio 1:
Se gli input sono 5,12,8,20,15,3,10, 5 e 15, l'output dovrebbe essere:
50
5(5 + 12 + 8 + 15 + 10 = 50, cinque numeri rientrano nell'intervallo 5-15)
Esempio 2:
Se gli input sono 2,8,12,20,6,14, 5 e 10, l'output dovrebbe essere:
8
1(L'elaborazione si interrompe a 20 perché è il doppio del massimo, 10; prima di quel punto è stato aggiunto solo 8, quindi la somma è 8 e il conteggio è 1)
Esempio 3:
Se gli input sono 1,2,3,4,5, 10 e 20, l'output dovrebbe essere:
0
0(Nessun numero rientra nell'intervallo 10-20)
Provalo tu
<?php
// Leggi l'input
$numbers = explode(',', trim(fgets(STDIN)));
$min = intval(trim(fgets(STDIN)));
$max = intval(trim(fgets(STDIN)));
// Inizializza le variabili
$sum = 0;
$count = 0;
// TODO: Scrivi qui il tuo codice
// Scorri l'array numbers
// Usa 'continue' per saltare i numeri fuori dall'intervallo (da min a max inclusi)
// Usa 'break' se incontri un numero esattamente pari al doppio della soglia massima
// Tieni traccia della somma e del conteggio dei numeri validi
// Mostra i risultati
echo $sum . "\n";
echo $count;
?>Tutte le lezioni di Fondamenti
4Operatori di confronto e logici
Operatori di confrontoUguaglianza e identitàOperatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica semplice2Variabili e tipi di dati
NumeriStringhe e virgoletteValori booleaniConvenzioni di denominazioneRiepilogo - Inizializzazione delle variabiliVariabili vuoteConcatenazione di stringheAcquisire input dall'utenteConvertire in tipi diversi5Logica condizionale
Istruzione ifIf - elseL’operatore ternarioOperatore null coalescingIstruzione switchRiepilogo - Prendere decisioni8Cicli
Ciclo forCiclo whileCiclo foreachIterare con chiavi e valoriIstruzione breakIstruzione continueRipasso - Iterare sui dati3Operatori di base
Operatori aritmeticiOperatore moduloOperatore di elevamento a potenzaAssegnazione compostaIncremento/decrementoPrecedenza degli operatoriRiepilogo - calcoli sempliciOperatori per stringheEsercitati da solo: Compilatore PHP online