Как можно найти среднее арифметическое ряда чисел?

freeman0204

Новичок
Как можно найти среднее арифметическое ряда чисел? 3,6,9,13,16,19,23,26,29. Используя циклы.
 

Kotofey

FloodMaster.
в цикле проходишь по всем цифрам и находишь среднее арифметическое :)
 

freeman0204

Новичок
Код:
foreach(ряд цифр)
{
//какое-то математическое действие
}
//ещё какое-то математическое действие
http://school-assistant.ru/?predmet=matematika&theme=srednee_arifmeticheskoe
Написал вот такой код:

PHP:
$average = array(3, 6, 9, 13, 16, 19, 23, 26, 29);

foreach ($average as $key => $value) {
    $average = $value / 9;
    }

echo "Среднее арифметическое ряда чисел равно $average<br>";
Получается 3.2222222222222 что не верно. Я так понимаю здесь нужно использовать ассоциативный массив? Но в нем предполагается ключ и значение, например number => 3. А у меня просто ряд чисел. Нужно еще дописать и ключ? Как суммировать данные массива?
 

Kotofey

FloodMaster.
Написал вот такой код:

PHP:
$average = array(3, 6, 9, 13, 16, 19, 23, 26, 29);

foreach ($average as $key => $value) {
    $average = $value / 9;
    }

echo "Среднее арифметическое ряда чисел равно $average<br>";
Получается 3.2222222222222 что не верно. Я так понимаю здесь нужно использовать ассоциативный массив? Но в нем предполагается ключ и значение, например number => 3. А у меня просто ряд чисел. Нужно еще дописать и ключ? Как суммировать данные массива?
посмотри внимательнее, у меня после foreach ещё какое-то математическое действие.
p.s. в foreach не верное действиет, думай ещё.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
ключ там использовать необязательно. Твоя задача, как мне она видится:
1. Ты имеешь массив, в цикле суммируешь все его элементы (получаешь сумму элементов)
2. Делишь это значение на число элементов массива.

В твоем коде нет суммирования и деление жестко завязано на 9, хотя элементов может стать и 8 и 100500 и тебе придется в коде указывать это руками, что неверно.

Заведи переменную $sum - отдельно под сумму и в ней накапливай значения массива, потом подели на число элементов. Как узнать сколько элементов в массиве - есть в разделе мануала про массивы.
 

Вурдалак

Продвинутый новичок
Не слушай этих людей, они тебя плохому научат. Сначала нужно запилить интерфейс сервиса, который выполняет нахождение среднего арифметического, и написать спецификацию в PhpSpec. Напишешь — возвращайся сюда.
 

Kotofey

FloodMaster.
Не слушай этих людей, они тебя плохому научат. Сначала нужно запилить интерфейс сервиса, который выполняет нахождение среднего арифметического, и написать спецификацию в PhpSpec. Напишешь — возвращайся сюда.
и создать отдельный класс для математических функций, $math->sum($a,$b); $math->division($a,$b)
 

freeman0204

Новичок
Вот например создал скрипт который считает среднее от 1 до 100.
PHP:
for ($z = 1, $summa = 0; $z <= 100; $z++) {
    $summa +=  $z;
    } 

echo "Сумма всех чисел от 1 до 100 равна: $summa<br>";*/
Возможно без массива создать на цикле for такой скрипт о котором я говорил выше?
 

Kotofey

FloodMaster.
Вот например создал скрипт который считает среднее от 1 до 100.
PHP:
for ($z = 1, $summa = 0; $z <= 100; $z++) {
    $summa +=  $z;
    }

echo "Сумма всех чисел от 1 до 100 равна: $summa<br>";*/
Возможно без массива создать на цикле for такой скрипт о котором я говорил выше?
Точно "создал" ? Мало того , что syntaxError, так ещё прям в коде написано, что считает не среднее, а
Сумма всех чисел от 1 до 100 равна:
 
Сверху