Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/34: Рейтинг темы: голосов - 34, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 04.04.2012
Сообщений: 26

Умножение 2-ух массивов поэлементно

05.04.2012, 05:38. Показов 7127. Ответов 4
Метки нет (Все метки)

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

Помогите! Мне в голову уже совсем ниче не приходит, не люблю функции
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.04.2012, 05:38
Ответы с готовыми решениями:

Вычислить поэлементно сумму и произведение двух массивов
1-й заполнить четными числами из указанного пользователем диапазона, 2-й нечетными. каждый массив должен содержать 10 чисел и вычислять...

Умножение массивов
Всем привет.. Помогите, пожалуйста с программой: #include <iostream> #include <conio.h> #include <iomanip> #include...

Умножение матриц, представленных в виде массивов
Есть задача: нужно реализовать умножение матриц, представленных в виде одномерного массива Умножение НЕ поэлементное! Есть следующий...

4
Заблокирован
05.04.2012, 05:58
C++
1
2
3
4
5
void mult(int in1[], int in2[], int out[], int count)
{
    for (int i = 0; i < count; ++i)
        out[i] = in1[i] * in2[i];
}
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
05.04.2012, 09:29
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <iterator>
 
int main()
{
   std::vector<int> vec1 = {1,2,3,4,5,6};
   std::vector<int> vec2 = vec1;
   std::vector<int> result;
   std::transform(vec1.begin(), vec1.end(), vec2.begin(), std::back_inserter(result), [](const int f, const int s) { return f * s; });
   std::copy(result.begin(), result.end(), std::ostream_iterator<int>(std::cout, " "));
   std::cout << std::endl;
}
http://liveworkspace.org/code/... abe25c921e
0
Higher
 Аватар для diagon
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
05.04.2012, 09:42
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <vector>
#include <numeric>
#include <iterator>
 
int main()
{
    std::vector< int > a = { 1, 2, 3 };
    std::vector< int > b = { 4, 5, 6 };
    std::vector< int > res;
    
    std::inner_product( a.begin(), a.end(), b.begin(), 0,
    [&]( int init, int x )
    {
        res.push_back(x);
        return init;
    }, std::multiplies< int > () );
    
    std::copy( res.begin(), res.end(), 
        std::ostream_iterator< int > (std::cout, " ") );
}
0
139 / 139 / 39
Регистрация: 26.02.2011
Сообщений: 548
05.04.2012, 14:16
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
//#include "stdafx.h"//óáðàòü "//" åñëè â âèäæóàë çàïóñêàòü(ðàçêîììåíòèðîâàòü)
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
int main()
{
   int n,i,m;
   while(!fflush(stdin)&&printf("Vvedite razmernost massiva A: ")&&!scanf("%i",&n));
   int *A=(int*)malloc(n*sizeof(int));
   printf("\nVvedite elementy massiva A\n\n");
   for(i=0;i<n;i++)
   {
                      while(!fflush(stdin)&&printf("A[%d] = ",i+1)&&!scanf("%i",&A[i]));
   }
   while(!fflush(stdin)&&printf("\nVvedite razmernost massiva B: ")&&!scanf("%i",&m));
   int *B=(int*)malloc(m*sizeof(int));
   int *C=(int*)malloc((m+n)*sizeof(int));
   printf("\nVvedite elementy massiva B\n\n");
   for(i=0;i<m;i++)
   {
                      while(!fflush(stdin)&&printf("B[%d] = ",i+1)&&!scanf("%i",&B[i]));
   }
   system("cls");//÷èñòèì ýêðàí
   printf("Massiv A: ");
   for(i=0;i<n;i++)
   {
                    printf("%d ",A[i]);
   }
   printf("\nMassiv B: ");
   for(i=0;i<m;i++)
   {
                    printf("%d ",B[i]);
   }
   printf("\nMassiv C: ");
   if(m<n)
   {
                    for(i=0;i<m;i++)
                    {
                                       C[i]=A[i]*B[i];
                                       printf("%d ",C[i]);
                    } 
   }
   else
   {
       for(i=0;i<n;i++)
                    {
                                       C[i]=A[i]*B[i];
                                       printf("%d ",C[i]);
                    }
   }
   free(A);
   free(B);
   free(С);
   getch();
   return 0;
}
Добавлено через 5 минут
через функцию

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
//#include "stdafx.h"//óáðàòü "//" åñëè â âèäæóàë çàïóñêàòü(ðàçêîììåíòèðîâàòü)
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
void proiz(int *A,int *B,int n,int m,int i,int *C)
{
printf("\nMassiv C: ");
   if(m<n)
   {
                    for(i=0;i<m;i++)
                    {
                                       C[i]=A[i]*B[i];
                                       printf("%d ",C[i]);
                    } 
   }
   else
   {
       for(i=0;i<n;i++)
                    {
                                       C[i]=A[i]*B[i];
                                       printf("%d ",C[i]);
                    }
   }    
   return; 
}
 
int main()
{
   int n,i,m;
   while(!fflush(stdin)&&printf("Vvedite razmernost massiva A = ")&&!scanf("%i",&n));
   int *A=(int*)malloc(n*sizeof(int));
   printf("\nVvedite elementy massiva A\n\n");
   for(i=0;i<n;i++)
   {
                      while(!fflush(stdin)&&printf("A[%d] = ",i+1)&&!scanf("%i",&A[i]));
   }
   while(!fflush(stdin)&&printf("\nVvedite razmernost massiva B = ")&&!scanf("%i",&m));
   int *B=(int*)malloc(m*sizeof(int));
   int *C=(int*)malloc((m+n)*sizeof(int));
   printf("\nVvedite elementy massiva B\n\n");
   for(i=0;i<m;i++)
   {
                      while(!fflush(stdin)&&printf("B[%d] = ",i+1)&&!scanf("%i",&B[i]));
   }
   system("cls");//÷èñòèì ýêðàí
   printf("Massiv A: ");
   for(i=0;i<n;i++)
   {
                    printf("%d ",A[i]);
   }
   printf("\nMassiv B: ");
   for(i=0;i<m;i++)
   {
                    printf("%d ",B[i]);
   }
   proiz(A,B,n,m,i,C);
   free(A);
   free(B);
   free(C);
   getch();
   return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.04.2012, 14:16
Помогаю со студенческими работами здесь

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

Умножение матриц поэлементно
Вычислить матрицу C, равную произведению матриц A и B поэлементно. Элемент i-ой строки j-столбца матрицы C равен скалярному произведению...

Объединение двух массивов поэлементно - первый с первым, второй со вторым
Всем приветы! Есть два одномерных строковых массива. В первом и втором массиве одинаковое количество строк. Нужно получить третий...

Умножение массивов
Добрий день товарищи!!! Помогите сделать задачку... Найти умножения двух масивов а и b и результат записать в массив c

Умножение массивов
В последней процедуре надо перемножить массивы a и b. Что не так? unit Unit1; interface uses Windows, Messages, SysUtils,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru