Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 23.02.2016
Сообщений: 40
1

От программы требуется перемножить все элементы массива

21.12.2016, 18:16. Показов 1009. Ответов 2
Метки нет (Все метки)

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

Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
n=30;
m=rand(n,1)*100;
s=1;
ibeg=(labindex-1)*(n/numlabs)+1;
iend=(labindex-1)*(n/numlabs)+n/numlabs;
tic
parfor i=ibeg:iend
    s=s*m[i];
    a=numlabs;
end
 
for i=1:a{1}
    k(i)=s{i};
end
rez=prod(k)
toc
Пии запуске программы ругается на строчку:
Matlab M
1
parfor i=ibeg:iend
Подскажите, как можно исправить?

 Комментарий модератора 
Правила форума, пункт 4.3. Создавайте темы с осмысленными и понятными названиями - это серьезно повышает шансы, что на ваш вопрос ответят.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.12.2016, 18:16
Ответы с готовыми решениями:

Перемножить по очереди все числа столбцов двумерного массива на все элементы одномерного
(!) Запрашивает ввод одномерного и двумерного массивов и перемножает по очереди все числа столбцов...

Перемножить все элементы массива, идущие после максимального элемента
Помогите пожалсто.

Перемножить все элементы комплексного массива, где модуль целой части равен модулю мнимой
Здравствуйте, проблема такая, есть два массива, первый-действительные части комплексного...

Перемножить все элементы списка
Доброго времени суток! Тут такая задача, нужно сложить между собой все элементы массива. Допустим...

2
317 / 256 / 30
Регистрация: 30.03.2013
Сообщений: 755
22.12.2016, 22:58 2
s=s*m[i];

Error: Unbalanced or unexpected parenthesis or bracket.

наверно надо так :
s=s*m(i);

но дальше у вас все равно что-то не так, a всегда будет равна 1
и вы пишете далее a{1}, а это обращение как будто у вас тип cell , но это не так
1
0 / 0 / 0
Регистрация: 23.02.2016
Сообщений: 40
23.12.2016, 10:54  [ТС] 3
Спасибо. Решение найдено.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.12.2016, 10:54

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Многопоточно перемножить все элементы матрицы
Задание состоит в том чтобы с помощью 3 или 4 потоков выполнить перемножение элементов матрицы,...

Перемножить все отрицательные элементы матрицы
Привет всем!! Как сделать, если в строке встречается все отрицательные элементы то произошло их...

Перемножить элементы массива
Привет всем. Уже третий день пинаю, не как не могу сделать. Суть проблемы такова - есть продукт в...

Перемножить элементы массива кратные 9
3. найти элементов которых сложить на 9 и умножить их


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.