Умножить массив на число (PHP)
Операции умножения массива на число в PHP нет, если умножить переменную типа массив на число, появится ошибка Fatal error: Unsupported operand types in . on line ..
Чтобы умножить массив можно пойти двумя путями.
Первый: использовать функцию array_walk() или array_walk_recursive() для многомерных массивов.
Второй: перебрать все элементы массива при помощи цикла и умножить каждый элемент.
array_walk умножение
Данный способ работает на PHP 5 >= 5.3
Например есть массив $array , который нужно умножить на 5, воспользуемся функцией array_walk() .
> ); print_r($array);?php>
Результат
На экране вы увидите:
Array ( [0] => 10 [1] => 30 [2] => Array ( [0] => 7 [1] => 9 [2] => 11 ) [3] => 15 [4] => 25 [5] => 20 )
Как видите на экране, умножились значения только верхнего уровня, значения вложенных массивов остались без изменений.
array_walk_recursive уномжение
Данный способ работает на PHP 5 >= 5.3
Чтобы умножить все значения многомерного массива на 5, необходимо воспользоваться функцией array_walk_recursive() .
В качестве исходных данных, возьмем массив из первого примера.
> ); print_r($array);?php>
Результат
На экране вы увидите:
Array ( [0] => 10 [1] => 30 [2] => Array ( [0] => 35 [1] => 45 [2] => 55 ) [3] => 15 [4] => 25 [5] => 20 )
Теперь умножены абсолютно все значения в массиве.
foreach умножение
Второй способ, как упоминалось выше, перебор всех элементов массива в цикле и их умножение.
Возьмем исходный массив из первого примера, и умножим его на 7.
Результат
Array ( [0] => 14 [1] => 42 [2] => Array ( [0] => 7 [1] => 9 [2] => 11 ) [3] => 21 [4] => 35 [5] => 28 )
Как видно, умножились только элементы верхнего уровня. Элементы вложенного массива остались без изменений.
Чтобы умножить абсолютно все элементы массива, при помощи конструкции foreach , необходимо создать функцию и в цикле проверять тип переменной значения $value , и если это массив, то рекурсивно вызвать функцию.
Для частого выполнения операции умножения значений массива, лучше написать функцию.
array_multiply() умножение значений одномерных массивов и array_multiply_recursive() .
Функция array_multiply
Функция умножения значений одномерного массива на число. Принимает 2 параметра, массив и число.
Результат
На экране вы увидите, естественно значения вложенных массивов останутся без изменений.
Array ( [0] => 16 [1] => 48 [2] => Array ( [0] => 7 [1] => 9 [2] => 11 ) [3] => 24 [4] => 40 [5] => 32 )
Функция array_multiply_recursive
А вот для умножения многомерных массивов, как мне кажется, лучше использовать функцию array_walk_recursive() .
Результат
Все значения массива умножились на 13.
Array ( [0] => 26 [1] => 78 [2] => Array ( [0] => 91 [1] => 117 [2] => 143 ) [3] => 39 [4] => 65 [5] => 52 )
✖ ❤ Мне помогла статья нет оценок
8578 просмотров нет комментариев Артём Фёдоров 18 ноября 2013
Категории
Читайте также
- Цикл в обратном порядке (PHP)
- Преобразовать массив в объект (PHP)
- foreach vs array_walk (PHP)
- Массив уникальных значений (JavaScript)
- Ассоциативный массив в JavaScript
- Как записать массив в файл (PHP)
- Заполнить массив случайными числами (PHP)
- Получить последнее значение массива (PHP)
- Получить первое значение массива (PHP)
- Массив в строку (JavaScript)
- Получить массив ключей (PHP)
- Сортировать числовой массив (JavaScript)
Комментарии
Написать комментарий
© Экспэнч 2010-2023
При полном или частичном копировании статей сайта указывайте пожалуйста ссылку на источник
Хотите узнать больше информации, пишите на: artem@expange.ru
Вход на сайт
Введите данные указанные при регистрации:
Социальные сети
Вы можете быстро войти через социальные сети:
Умножение элементов массива на число
Умножение элементов массива на число
Необходимо умножить ArrayList<Integer> массив на число int. Есть ли готовые методы для этого? .
Умножение всех элементов массива на число
Доброго времени суток! Начал изучать ассемблер,написал прогу которая ко всем элементам массива.
Умножение массива на число
надо написать " составить процедуру умножение одномерного массива на числа q(используя процедуру.
Умножение двумерного массива на число
умножение двумерного массива на число. Вот мои не рабочий код поправьте пожалуйста! program pr;.
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874

Сообщение было отмечено Памирыч как решение
Решение
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
#include using namespace std; int main() { const int SIZE = 10; int mas[SIZE] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; const int DIGIT = 5; for (int i = 0; i SIZE; i++) mas[i] *= DIGIT; for (int i = 0; i SIZE; i++) cout [ i] <" "; cout ; system("pause"); return 0; }
Умножение, деление и сложение константы на все элементы массива Numpy в Python
Умножение константы на массив NumPy в Python так же просто, как умножение двух чисел. Чтобы умножить константу на каждый элемент массива, используйте арифметический оператор умножения *. В оператор умножения передайте массив и константу в качестве операндов, как показано ниже.
b = a * c
Где, a – входной массив, c – константа, b – результирующий массив.
Пример
В следующем примере мы умножим константу 3 на массив a. Результирующий массив сохраняется в b.
import numpy as np #2D array a = (np.arange(8)*2).reshape(2,4) #print array print("The array\n",a) #multiplying a constant to all the elements of array b = a * 3 print("\nAfter multiplying a constant to all the elements of array\n",b)

Как разделить все элементы на константу?
Разделить массив NumPy на константу так же просто, как разделить два числа. Чтобы разделить каждый элемент массива на константу, используйте арифметический оператор деления /. Передайте массив и константу в качестве операндов оператору деления, как показано ниже.
b = a / c
Где, a – входной массив, c – константа, b – результирующий массив.
Пример
В следующем примере мы разделим массив a на константу 3. Полученный массив сохраняется в b.
import numpy as np #2D array a = (np.arange(8)*2).reshape(2,4) #print array print("The array\n",a) #divide all the elements of array by constant b = a / 3 print("\nAfter dividing by a constant\n",b)

Как добавить константу в массив?
Добавить константу в массив NumPy в Python так же просто, как добавить два числа. Чтобы добавить константу к каждому элементу массива, используйте арифметический оператор сложения +. В оператор сложения передайте массив и константу в качестве операндов, как показано ниже.
b = a + c
Где, a – входной массив, c – константа, b – результирующий массив.
Пример
В следующем примере Python мы добавим константу 3 в массив a. Результирующий массив сохраняется в b.
import numpy as np #2D array a = (np.arange(8)*2).reshape(2,4) #print array print("The array\n",a) #adding a constant to all the elemnets of array b = a + 3 print("\nAfter adding a constant to all the elemnets of array\n",b)
Как умножить массив на число с
Двумерные матрицы в электронной таблице могут быть представлены массивами значений их элементов, записанных в двумерных диапазонах. Чтобы умножить матрицу на какое-либо число, нужно умножить каждый элемент этой матрицы на это число. Иначе говоря, следует умножить массив, содержащий элементы матрицы на число. В MS Excel для выполнения операции умножения матрицы на число можно применить соответствующие формулы.
Рассмотрим технологию умножения матрицы на число на примере.
Пример 3. Пусть необходимо умножить матрицу А= на число 4, иначе говоря, получить матрицу С= А х 4.
Решение:
1. В ячейки рабочего листа введите элементы матрицы (например в диапазон А2: B3, см. рис. 4).
2. Выделите диапазон, в который будет помещаться результирующая матрица, например D2:E3.
3. В выделенный диапазон введите формулу: = А2: B3*4
4. Нажмите комбинацию клавиш Ctrl + Shift + Enter (такая комбинация указывает, что должна быть выполнена операция с массивом ячеек). После выполнения операций в диапазоне ячеек D2:C3 будут помещены результаты вычислений
Рисунок 4
