Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Посчитать среднее арифметическое с помощью цикла
Спасибо, но я только начинаю изучать PHP и мне нужно это сделать именно с помощью оператора цикла.
IllusionMH
Отправлено: 08 Января, 2013 - 12:03:06
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
lawer85, раз вы сделали такой цикл, в котором фигурирует все числа кроме "средних" трех, то просто запишите массивом, и сделайте как предложил выше NoPaper
Если слегка оторваться от вашего варианта, то в данной последовательности можно найти 2 закономерности = 2 цикла. На случай если все-таки чисел будет больше то
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
lawer85
Отправлено: 08 Января, 2013 - 12:11:52
Частый гость
Покинул форум
Сообщений всего: 189
Дата рег-ции: Янв. 2013
Помог: 1 раз(а)
Всем спасибо. Видимо я не правильно выразился. Можно ли это сделать с помощью оператора цикла, не прибегая к использованию массива, т.к. его еще не знаю? Просто не хочется перескакивать в изучении тем PHP
EuGen
Отправлено: 08 Января, 2013 - 12:15:56
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
lawer85 пишет:
Можно ли это сделать с помощью оператора цикла, не прибегая к использованию массива
Это можно сделать и без функций суммирования массива и без цикла (см. пример выше)
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
IllusionMH
Отправлено: 08 Января, 2013 - 12:16:32
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
lawer85, вариант без массива есть в моем посте, если не включать строки под соответствующими комментариями.
lawer85
Отправлено: 08 Января, 2013 - 12:24:30
Частый гость
Покинул форум
Сообщений всего: 189
Дата рег-ции: Янв. 2013
Вывелось 1866144 на экран хотя поидее должно быть 16
IllusionMH
Отправлено: 08 Января, 2013 - 12:39:32
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
lawer85, вы в цикле 3 раза выводите в одну строку сумму для соответствующих троек чисел
При этом не делите на кол-во элементов, о каком среднем арифметическом может идти речь?
Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2015
Помог: 0 раз(а)
Пусть уже прошло 2 года с момента последнего сообщения. но все-же хочется внести свою лепту по данной задаче (я так понимаю, что она была взята из курса по PHP Михаила Русакова).
Комментарии не стал стирать, чтобы людям была понятна логика работы данного двойного цикла... И префиксный инкремент был выбран намеренно по объективным причинам. Так что это не очеПятка!
Вот еще одно решение:
Покинул форум
Сообщений всего: 1
Дата рег-ции: Июнь 2015
Помог: 0 раз(а)
//3 + 6 + 9 + 12 + 15 + 18 + 21 + 24 + 27 - арифметическая прогрессия + 3
//3+ 6 + 9+ 13 + 16 + 19 + 23 + 26 + 29 надо получить
// закономерность в ряде - добавляется к первой цифре после 10 единица Условие if
// и ещё единица после 20 и ещё один Условный оператор if ($i>20) n++;
//получается ряд 3+6+9+(12+1)+16+19+(22+1)+26+29
if ($n > 10) $n++; // 3+6+9+(12+1)+16+19
if ($n > 20) $n++; // (22+1)+26+29
$sum_1 +=$n; //суммируем все переменные
echo "Итерация $n <br>";
}
$sum = $sum_1/9; // делим сумму на количество
//(количество чисел в уроках по Русакову PHP, ещё не известно как подсчитать)
//будет рассмотрено в последующих уроках, в массивах, поэтому пишем девятку
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.