Menu
Coddy logo textTech

Повторение: перебор данных

Часть раздела Основы путешествия по PHP на Coddy. Урок 53 из 71.

challenge icon

Задание

Легко

Прочитайте три строки ввода:

  1. Список целых чисел, разделённых запятыми (например, 12,5,8,20,3,15,7)
  2. Минимальное значение threshold
  3. Максимальное значение threshold

Обработайте array, чтобы найти sum всех numbers, попадающих в range (включая оба значения — minimum и maximum). Сначала проверьте, является ли number exactly double maximum threshold, и если да, немедленно остановитесь с помощью break. В противном случае используйте continue, чтобы пропустить numbers за пределами range.

Первая строка считывается с помощью explode, поэтому $numbers содержит strings, а $min и $max являются integers. Преобразуйте каждый элемент с помощью intval() (или приведения (int)) перед сравнением с thresholds или добавлением к sum.

Выведите две строки:

  1. Sum valid numbers в пределах range
  2. Количество numbers, которые были добавлены к sum

Пример 1:

Если входные данные: 5,12,8,20,15,3,10, 5 и 15, вывод должен быть таким:

50
5

(5 + 12 + 8 + 15 + 10 = 50, пять numbers находятся в range 5-15)

Пример 2:

Если входные данные: 2,8,12,20,6,14, 5 и 10, вывод должен быть таким:

8
1

(Обработка останавливается на 20, потому что это double maximum 10; до этой точки был добавлен только 8, поэтому sum равен 8, а count — 1)

Пример 3:

Если входные данные: 1,2,3,4,5, 10 и 20, вывод должен быть таким:

0
0

(Ни один number не попадает в range 10-20)

Попробуйте сами

<?php
// Прочитать ввод
$numbers = explode(',', trim(fgets(STDIN)));
$min = intval(trim(fgets(STDIN)));
$max = intval(trim(fgets(STDIN)));

// Инициализировать переменные
$sum = 0;
$count = 0;

// TODO: Напишите ваш код здесь
// Пройти циклом по массиву numbers
// Используйте 'continue', чтобы пропускать числа вне диапазона (от min до max включительно)
// Используйте 'break', если встретите число, точно вдвое большее максимального порога
// Отслеживайте сумму и количество допустимых чисел


// Вывести результаты
echo $sum . "\n";
echo $count;
?>

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор PHP