Podsumowanie — iterowanie po danych
Część sekcji Podstawy ścieżki PHP w Coddy. Lekcja 53 z 71.
Wyzwanie
ŁatwyOdczytaj trzy wiersze danych wejściowych:
- Listę liczb całkowitych oddzielonych przecinkami (np.
12,5,8,20,3,15,7) - Minimalną wartość progową
- Maksymalną wartość progową
Przetwórz tablicę, aby znaleźć sumę wszystkich liczb mieszczących się w zakresie (włącznie z minimum i maksimum). Najpierw sprawdź, czy liczba jest dokładnie dwukrotnością maksymalnej wartości progowej, a jeśli tak, natychmiast zakończ działanie za pomocą break. W przeciwnym razie użyj continue, aby pominąć liczby spoza zakresu.
Pierwszy wiersz jest odczytywany za pomocą explode, więc $numbers zawiera ciągi znaków, podczas gdy $min i $max są liczbami całkowitymi. Przed porównaniem każdego elementu z wartościami progowymi lub dodaniem go do sumy przekonwertuj go za pomocą intval() (lub rzutowania (int)).
Wypisz dwa wiersze:
- Sumę prawidłowych liczb mieszczących się w zakresie
- Liczbę liczb dodanych do sumy
Przykład 1:
Jeśli dane wejściowe to 5,12,8,20,15,3,10, 5 i 15, wynik powinien być następujący:
50
5(5 + 12 + 8 + 15 + 10 = 50, pięć liczb mieści się w zakresie 5-15)
Przykład 2:
Jeśli dane wejściowe to 2,8,12,20,6,14, 5 i 10, wynik powinien być następujący:
8
1(Przetwarzanie zatrzymuje się na 20, ponieważ jest to dwukrotność maksimum równego 10; wcześniej dodano tylko 8, więc suma wynosi 8, a liczba wynosi 1)
Przykład 3:
Jeśli dane wejściowe to 1,2,3,4,5, 10 i 20, wynik powinien być następujący:
0
0(Żadna liczba nie mieści się w zakresie 10-20)
Spróbuj swoich sił
<?php
// Wczytaj dane wejściowe
$numbers = explode(',', trim(fgets(STDIN)));
$min = intval(trim(fgets(STDIN)));
$max = intval(trim(fgets(STDIN)));
// Zainicjalizuj zmienne
$sum = 0;
$count = 0;
// TODO: Napisz tutaj swój kod
// Przejdź przez tablicę numbers
// Użyj 'continue', aby pominąć liczby spoza zakresu (od min do max włącznie)
// Użyj 'break', jeśli napotkasz liczbę równą dokładnie dwukrotności górnej granicy
// Śledź sumę i liczbę prawidłowych wartości
// Wyświetl wyniki
echo $sum . "\n";
echo $count;
?>Wszystkie lekcje w sekcji Podstawy
4Operatory porównania i logiczne
Operatory porównaniaRówność i tożsamośćOperatory logiczne — część 1Operatory logiczne — część 2Powtórka — prosta logika2Zmienne i typy danych
LiczbyCiągi znaków i cudzysłowyWartości logiczneKonwencje nazewnictwaPodsumowanie — inicjalizacja zmiennychPuste zmienneŁączenie ciągów znakówPobieranie danych od użytkownikaKonwersja na inne typy5Instrukcje warunkowe
Instrukcja ifIf - elseOperator trójargumentowyOperator null coalescingInstrukcja switchPodsumowanie — podejmowanie decyzji8Pętle
Pętla forPętla whilePętla foreachIterowanie z użyciem kluczy i wartościInstrukcja breakInstrukcja continuePodsumowanie — iterowanie po danych3Podstawowe operatory
Operatory arytmetyczneOperator moduloOperator potęgowaniaPrzypisanie złożoneInkrementacja/dekrementacjaPriorytet operatorówPowtórka — proste obliczeniaOperatory łańcuchów znakówPoćwicz samodzielnie: Kompilator PHP online