Php вычислить среднее значение

Найти среднее арифметическое

Массивы использовать нельзя, т.к. до них ещё не дошел) я это вижу вот так:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
echo "Среднее арифметическое
"
; $x = 0; $i = 0; while ($x 29) { $i++; if ($x == 9) { $x = $x + 4; continue; } if ($x == 19) { $x = $x + 4; continue;] } $x = $x + 3; } echo "$i
"
; echo "$x
"
;

Найти среднее арифметическое ряда чисел 3,6,9,13,16,19,23,26,29 с использованием циклов
Задача из моего учебника по циклам: необходимо найти среднее арифметическое ряда чисел.

Найти максимальный/минимальный элемент двумерного массива и среднее арифметическое
Нужно найти максимальный минимальный элемент двумерного массива и среднее арифметическое вот код: .

Массив: Найти и вывести на экран среднее арифметическое для элементов массива.
Я недавно начал php учить. Запнулcя на некоторых заданиях.. Не знаю как их сделать. Есть форма.

Найти среднее арифметическое квадратов и среднее арифметическое абсолютных значений двух вещественных чисел
Всем здрасте помогите плиз. Дается два вещественных числа. Найти среднее арифметическое их.

th0rvald, в каком виде числа хранятся .

Добавлено через 4 минуты

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
$nums = "3,6,9,13,16,19,23,26,29"; $len = strlen($nums); $i = 0; $res = 0; while($i  $len) { $char = $nums[$i]; $char2 = $nums[$i+1]; if($char == ','){ continue; } if($char2 != ','){ $char .= $char2 } $res += $char; $i++; } $res = $res/$len; echo $res;

ЦитатаСообщение от c4boomb Посмотреть сообщение

ни в каком. я так понимаю что нужно сделать так чтобы с каждой итерацией цикла число увеличивалось i++ будет считать количество итераций, т.е. количество чисел, а в $x будет сохраняться сумма.

ЦитатаСообщение от c4boomb Посмотреть сообщение

th0rvald, в каком виде числа хранятся .

Добавлено через 4 минуты

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
$nums = "3,6,9,13,16,19,23,26,29"; $len = strlen($nums); $i = 0; $res = 0; while($i  $len) { $char = $nums[$i]; $char2 = $nums[$i+1]; if($char == ','){ continue; } if($char2 != ','){ $char .= $char2 } $res += $char; $i++; } $res = $res/$len; echo $res;

я ж говорю массивы в курсе пока пройдены не были) пройдены только самые основы. циклы, условные операторы, логические и арифметические оператоции и всё такое))) можно ли как-то решить эту задачу такими средствами как я написал в своём коде?

c4boomb, ну всё равно средства использованные в коде мне не знакомы) в любом случае, спасибо за содействие)

th0rvald, изменил, прокомментировал.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
$nums = "3,6,9,13,16,19,23,26,29"; // строка с числами $len = strlen($nums); //получаем длину строки $i = 0; //счётчик $j = 0; //кол-во цифер в строке $res = 0; //здесь будет результат while($i  $len) { //пока счётчик меньше длины строки $char = $nums{$i}; //получаем символ строки по его порядковому номеру в нём $char2 = $nums[$i+1]; //получаем следющий за ним символ (для случая с двузначными числами) if($char == ','){ $i++; continue; } //если символ равен запятой переходим к следующей итерации if($char2 != ','){ $char .= $char2 } //если 2 символ не запятая, то создаём двузначное число $res += $char; //прибавляем число к результату $j++; //увеличиваем $j на 1 $i++; //$i +1 } $res = $res/$j; // echo $res;

Источник

Простые способы вычисления среднего значения на PHP для новичков

На PHP для вычисления среднего значения существует несколько простых способов, которые помогут новичкам быстро и легко вычислить среднее значение.

Метод 1: Использование встроенной функции array_sum()

Данный метод заключается в суммировании элементов массива с помощью функции array_sum() и делении результата на количество элементов массива с помощью функции count() .

$array = [4, 8, 13, 2, 9]; $average = array_sum($array) / count($array); echo "Среднее значение: $average"; 

Метод 2: Использование цикла foreach

Данный метод заключается в создании переменной $sum , в которую последовательно будут добавляться все элементы массива с помощью цикла foreach . Затем необходимо поделить сумму на количество элементов массива с помощью функции count() .

$array = [4, 8, 13, 2, 9]; $sum = 0; foreach ($array as $value) < $sum += $value; >$average = $sum / count($array); echo "Среднее значение: $average"; 

Метод 3: Использование функции array_reduce()

Данный метод заключается в использовании функции array_reduce() , которая последовательно итерируется по элементам массива и выполняет переданную ей функцию. В данном случае передается функция, которая суммирует элементы массива. Затем результат нужно разделить на количество элементов массива с помощью функции count() .

$array = [4, 8, 13, 2, 9]; $sum = array_reduce($array, function($carry, $item) < return $carry + $item; >); $average = $sum / count($array); echo "Среднее значение: $average"; 

Вывод

Вычисление среднего значения на PHP не составит труда даже для новичков, благодаря простым и понятным методам, описанным выше. С помощью функций array_sum() , count() , цикла foreach или функции array_reduce() можно легко и быстро вычислить среднее значение массива.

Источник

Как вычислить среднее значение числового массива на PHP

Среднее значение (или средняя арифметическая) числового массива вычисляется путем сложения всех элементов массива и деления их на количество элементов. В PHP вычисление среднего значения можно выполнить с помощью нескольких способов.

Способ 1: использование встроенной функции array_sum() и count()

Функция array_sum() вычисляет сумму элементов массива, а функция count() возвращает количество элементов массива. Вместе они могут использоваться для вычисления среднего значения. Вот пример:

$array = array(2, 4, 6, 8); $average = array_sum($array) / count($array); echo "Среднее значение: " . $average; 

Способ 2: использование цикла foreach

Вы также можете использовать цикл foreach для вычисления суммы элементов массива и их количества. Вот пример:

$array = array(2, 4, 6, 8); $sum = 0; $count = 0; foreach ($array as $value) < $sum += $value; $count++; >$average = $sum / $count; echo "Среднее значение: " . $average; 

Способ 3: использование функции array_reduce()

Функция array_reduce() предоставляет способ последовательной обработки элементов массива для вычисления какого-либо значения. Вот пример, который использует функцию array_reduce() для вычисления суммы элементов массива и функцию count() для определения его размера:

$array = array(2, 4, 6, 8); $sum = array_reduce($array, function($carry, $item) < $carry += $item; return $carry; >); $average = $sum / count($array); echo "Среднее значение: " . $average; 

Вывод

Вычисление среднего значения числового массива на PHP можно выполнить с помощью встроенных функций PHP (array_sum(), count(), array_reduce()) или цикла foreach. Важно помнить, что во всех этих методах необходима проверка на наличие элементов в массиве, чтобы избежать ошибок.

Источник

Как получить средний показатель из нескольких значений на php?

У меня есть несколько чисел(лежат в базе). К примеру
3600000
42540000
125420
и т д.
Всё это, ценники за недвижимость, делим на метр квадратный и получаем стоимость одного метра.

$srpr = round(35000000 / 45, 3); $srpr2 = number_format($srpr, 0, '', '.');

И у меня уже все эти числа приобретают уже вид в тысячных
36.000
24.665
1.546
и тд, ну грубо говоря выводятся уже ценники за кв метр.

Как получить средний показатель?
Среднее число. Не макс и не мин.

Простой 4 комментария

Lillipup

Kasperenysh

$data=[$a,$b,$c];
$average = round(array_sum($data)/count($data),3);

Судя по всему и это Вам пригодится скоро

Если нахождение стоимости за метр проводится в цикле, который перебирает выборку из БД и формат данных там примерно такой: $result[0][‘column_title’], то максимальное и минимальное число можно получить сугубо в цикле (при каждой итерации проверять, меньше/больше ли новое значение по сравнению с предыдущим). А вот для поиска среднего арифметического нам нужно продолжить работу и вне цикла: на выходе из цикла нам нужно либо уже иметь суму и количество стоимостей, либо создать отдельный массив со всеми стоимостями, чтобы высчитать их сумму и кол-во. Второй вариант мне кажется более читабельным и предпочтительным.

$sum = 0; $count = 0; while (. ) < // код, где высчитывается стоимость квадратного метра $sum += $srpr2; $count++; >$average = $sum / $count;
$all_costs_per_sqm = array(); while (. ) < // код, где высчитывается стоимость квадратного метра $all_costs_per_sqm[] = $srpr2; >$sum = array_sum($all_costs_per_sqm); $count = count($all_costs_per_sqm); $average = $sum / $count;

Источник

Php среднее арифметическое элементов массива

на самом деле, как найти среднее значение из этого массива, кроме пустых. пожалуйста, помогите решить эту проблему.

3 ответов

сначала вам нужно удалить пустые значения, иначе среднее значение будет неточным.

более краткий и рекомендуемый способ

принятый ответ работает для значений примера, но в целом просто используя array_filter($a) вероятно, это не очень хорошая идея, потому что она отфильтрует любые фактические нулевые значения, а также строки нулевой длины.

даже ‘0’ вычисляет значение false, поэтому следует использовать фильтр, который явно исключает строки нулевой длины.

Я должен вычислить значение массива, взятого из запроса, только если в нем было более одного элемента, иначе я должен вернуть значение элемента, я использую этот код:

И работать, когда есть два или более значения, но возвращать NULL, когда есть только одно значение, почему?

Спасибо всем, кто хочет принять участие.

Решение

Как уже было сказано, чтобы сделать это так, как вы пытаетесь, вам нужно получить доступ к первому элементу вашего массива, как

Тем не менее, ваш метод расчета среднего по-прежнему будет работать для массива с одним элементом. Это просто сработает до х / 1.

array_sum — Вычисляет сумму значений массива

Описание

array_sum() возвращает сумму значений массива.

Список параметров

Возвращаемые значения

Возвращает сумму значений в виде целого числа или числа с плавающей точкой; , если array пуст.

Примеры

Пример #1 Пример использования array_sum()

= array( 2 , 4 , 6 , 8 );
echo «sum(a) = » . array_sum ( $a ) . »
» ;

$b = array( «a» => 1.2 , «b» => 2.3 , «c» => 3.4 );
echo «sum(b) = » . array_sum ( $b ) . »
» ;
?>

Результат выполнения данного примера:

User Contributed Notes 9 notes

If you want to find the AVERAGE of the values in your array, use the sum and count functions together. For example, let’s say your array is $foo and you want the average.

= array_sum ( $foo ) / count ( $foo );
?>

If you want to check if there are for example only strings in an array, you can use a combination of array_sum and array_map like this:

function only_strings_in_array ( $arr ) return array_sum ( array_map ( ‘is_string’ , $arr )) == count ( $arr );
>

$arr1 = array( ‘one’ , ‘two’ , ‘three’ );
$arr2 = array( ‘foo’ , ‘bar’ , array());
$arr3 = array( ‘foo’ , array(), ‘bar’ );
$arr4 = array(array(), ‘foo’ , ‘bar’ );

var_dump (
only_strings_in_array ( $arr1 ),
only_strings_in_array ( $arr2 ),
only_strings_in_array ( $arr3 ),
only_strings_in_array ( $arr4 )
);
?>

This will give you the following result:
bool(true)
bool(false)
bool(false)
bool(false)

If some array elements arent integers, function will change them to integers (content of array will not change) type and then sum them.

Example:
[] = «12» ;
$foo [] = 10 ;
$foo [] = «bar» ;
$foo [] = «summer» ;
echo array_sum ( $foo ); //same as echo «22»;
?>

Here is how you can multiply two arrays in the form of matrixes using a bit of matrix algebra (M*M).
By calling the function multiplyMatrix, you will be multiplying two sparse matrixes (zeros need not be included in the array for the operation to be performed).

= array(
0 =>array( 1 => 1 , 4 => 1 ),
1 =>array( 2 => 1 , 3 => 1 ),
3 =>array( 1 => 1 ),
4 =>array( 5 => 1 ),
5 =>array( 6 => 1 )
);

$M1 = multiplyMatrix ( $M , $M ); //multiplying $M by itself

function multiplyMatrix ( $M1 , $M2 )
#Helena F Deus, Oct 06, 2008
##Multiply two matrixes; $M1 and $M2 can be sparse matrixes, the indexes on both should match
if( is_file ( $M1 )) < $matrix1 = unserialize ( file_get_contents ( $M1 ));>
else $matrix1 = $M1 ;

#transpose M2
$M2t = transpose ( $M2 );

foreach ( $M2t as $row => $tmp ) ##sum the result of the value in the col multiplied by the value in the vector on the corresponding row

foreach ( $M1 as $row1 => $tmp1 )

$multiply [ $row1 ] = array_rproduct ( $tmp , $tmp1 );

foreach ( $multiply as $row1 => $vals )

$sum [ $row ][ $row1 ]= array_sum ( $vals );
>

function transpose ( $M )
foreach ( $M as $row => $cols )

foreach ( $cols as $col => $value ) if( $value )
$Mt [ $col ][ $row ]= $value ;
>
>
ksort ( $Mt );

function array_rproduct ( $a1 , $a2 )

foreach ( $a1 as $line => $cols ) $a3 [ $line ] = $a1 [ $line ]* $a2 [ $line ];
foreach ( $a2 as $line2 => $cols2 ) $a3 [ $line2 ] = $a1 [ $line2 ]* $a2 [ $line2 ];
>
>
ksort ( $a3 );

Источник

Читайте также:  Как назвать файлы html
Оцените статью