Récapitulatif - Itérer sur les données
Fait partie de la section Fondamentaux du Journey PHP de Coddy — leçon 53 sur 71.
Défi
FacileLisez trois lignes d'entrée :
- Une liste d'entiers séparés par des virgules (par exemple,
12,5,8,20,3,15,7) - Une valeur de seuil minimale
- Une valeur de seuil maximale
Traitez le tableau pour trouver la somme de tous les nombres qui se situent dans la plage (incluant le minimum et le maximum). Vérifiez d'abord si un nombre est exactement le double du seuil maximum et, si c'est le cas, arrêtez-vous immédiatement avec break. Sinon, utilisez continue pour ignorer les nombres en dehors de la plage.
Affichez deux lignes :
- La somme des nombres valides dans la plage
- Le nombre d'éléments qui ont été ajoutés à la somme
Exemple 1 :
Si les entrées sont 5,12,8,20,15,3,10, 5, et 15, la sortie devrait être :
50
5(5 + 12 + 8 + 15 + 10 = 50, cinq nombres sont dans la plage 5-15)
Exemple 2 :
Si les entrées sont 2,8,12,20,6,14, 5, et 10, la sortie devrait être :
8
1(Le traitement s'arrête à 20 car c'est le double du max de 10 ; seul 8 a été ajouté avant ce point, donc la somme est 8 et le compte est 1)
Exemple 3 :
Si les entrées sont 1,2,3,4,5, 10, et 20, la sortie devrait être :
0
0(Aucun nombre ne se situe dans la plage 10-20)
Essayez vous-même
<?php
// Lire l'entrée
$numbers = explode(',', trim(fgets(STDIN)));
$min = intval(trim(fgets(STDIN)));
$max = intval(trim(fgets(STDIN)));
// Initialiser les variables
$sum = 0;
$count = 0;
// TODO: Écrivez votre code ici
// Parcourir le tableau numbers
// Utiliser 'continue' pour ignorer les nombres en dehors de l'intervalle (de min à max inclus)
// Utiliser 'break' si vous rencontrez un nombre valant exactement le double du seuil maximum
// Suivre la somme et le nombre de nombres valides
// Afficher les résultats
echo $sum . "\n";
echo $count;
?>Toutes les leçons de Fondamentaux
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions8Boucles
Boucle forBoucle whileBoucle foreachBoucles avec clés et valeursInstruction breakInstruction continueRécapitulatif - Itérer sur les données3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators