Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Maxachev
0 / 0 / 0
Регистрация: 23.01.2014
Сообщений: 11
#1

Поэлементное сложение массивов - C++

24.01.2014, 15:50. Просмотров 697. Ответов 3
Метки нет (Все метки)

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

Я вот набросал так, массивы создаются, а вот нужно их сложение нет(
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
64
65
66
67
68
69
70
71
72
73
74
75
#include "stdafx.h"
#include <iostream>
#include <ctime>
#include <windows.h>
#include <cstdlib>
 
using namespace std;
 
int main()
{
 
    int array1;
    int array2;
    int array;
 
 
    setlocale(0, "");
    srand(unsigned(time(NULL)));
    int N, M;
    cout << "Задай N и M: ";
    cin >> N >> M;
    int ** A = new int *[N];
    for (int i = 0; i < N; i++)
        A[i] = new int[M];
 
    for (int i = 0; i < N; i++)
    for (int j = 0; j < M; j++)
        A[i][j] = ((rand() % 100));
 
 
    cout << "Вот ваш первый массив:" << endl << endl;
    for (int i = 0; i < N; i++)
    {
        for (int j = 0; j < M; j++)
            cout << A[i][j] << " ";
        cout << endl;
    }
 
 
 
    setlocale(0, "");
    srand(unsigned(time(NULL)));
    int K, L;
    cout << "Напиши числа: ";
    cin >> K >> L;
    int ** B = new int *[K];
    for (int i = 0; i < N; i++)
        B[i] = new int[L];
 
    for (int i = 0; i < K; i++)
    for (int j = 0; j < L; j++)
        B[i][j] = ((rand() % 100));
 
 
    cout << "Вот второй массив:" << endl << endl;
    for (int i = 0; i < K; i++)
    {
        for (int j = 0; j < L; j++)
            cout << B[i][j] << " ";
        cout << endl;
    }
 
 
// здесь ерунда дальше
    array1 = A[N][M]; 
    array2 = B[K][L];
    {
        cout << "Сложение :" << endl;
        array = array1 + array2; 
        cout << array;
    }
 
       system("pause");
 
}
После ввода массивов выдает ошибку
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.01.2014, 15:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поэлементное сложение массивов (C++):

Поэлементное произведение элементов двух массивов - C++
Написать программу, в которой объявляется три массива одинакового размера. Первые два массива заполняются случайными числами в диапазоне от...

Поэлементное соединение двух массивов строк с удалением повторяющихся элементов - C++
Например есть два массива: char A = {&quot;abcdefghi&quot;}; char B = {&quot;ihgfedcba&quot;}; В результате должно быть так: ai bh cg df e fd...

сложение массивов - C++
Напишите функцию, которая складывает поэлементно два массива, и записывает результаты сложений в третий массив. Массивы содержат элементы ти...

Сложение массивов - C++
Произвести сложение двух массивов 5х3 по правилам сложения матриц.

Сложение Массивов - C++
Помогите у меня такая задача есть двумерный массив 225x225 это массив нужно разбить на другие массивы 15x15 (т.е 225 массивов 15х15) и...

Сложение двумерных массивов - C++
помогите пожалуйста с прогой!!! Написать функцию, которая складывает соответствующие элементы двух заданных массивов и заносит...

3
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
24.01.2014, 16:17 #2
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
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
 
int main()
{
    std::srand((size_t)(std::time)(nullptr));
 
    size_t arraysSize;
    std::cout << "N: ";
    std::cin >> arraysSize;
 
    int *firstArray = new int[arraysSize];
    std::cout << "First array : ";
    for (size_t i = 0; i < arraysSize; i++) {
        std::cout << std::setw(5) << (firstArray[i] = std::rand() % 11 + 1);
    }
    std::cout << std::endl;
 
    int *secondArray = new int[arraysSize];
    std::cout << "Second array: ";
    for (size_t i = 0; i < arraysSize; i++) {
        std::cout << std::setw(5) << (secondArray[i] = std::rand() % 11 + 1);
    }
    std::cout << std::endl;
 
    int *thirdArray = new int [arraysSize];
    std::cout << "Third array : ";
    for (size_t i = 0; i < arraysSize; i++) {
        std::cout << std::setw(5) << (thirdArray[i] = firstArray[i] + secondArray[i]);
    }
    std::cout << std::endl;
 
    delete [] firstArray;
    firstArray = nullptr;
 
    delete [] secondArray;
    secondArray = nullptr;
 
    delete [] thirdArray;
    thirdArray = nullptr;
 
    std::system("pause");
    return 0;
}
1
some_name
Вежливость-главное оружие
226 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,440
24.01.2014, 16:42 #3
Кликните здесь для просмотра всего текста

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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#include "stdafx.h"
#include <iostream>
#include <ctime>
#include <windows.h>
#include <cstdlib>
 
using namespace std;
 
int ** matrix_constructor(int w, int h);
 
void matrix_print(int ** matrix, int w, int h);
 
void matrix_fill(int **matrix, int w, int h); 
 
void matrix_destructor(int **matrix);
 
int main()
{ 
    setlocale(0, "ru");
 
 
    /*Create a first array*/
    int N, M;
    cout << "Задай N и M: "; cin >> N >> M;
    int ** A = 
        matrix_constructor(N, M);    
    matrix_fill(A, N, M);   
    matrix_print(A, N, M);
 
    /*Create a second array*/
    int K, L;
    cout << "Задай K и L: "; cin >> K >> L;
    int ** B = 
        matrix_constructor(K, L);
    matrix_fill(B, K, L);   
    matrix_print(B, K, L);
 
    /*Calculate summ of two array*/
    int Wmin = K < N ? K : N,       
        Hmin = L < M ? L : N;   
 
    int ** R =  matrix_constructor(Wmin, Hmin);
 
    for (int i = 0; i < Wmin; ++i)
        for (int j = 0; j < Hmin; ++j)      
            R[i][j] = A[i][j] + B[i][j];        
 
    matrix_print(R, Wmin, Hmin);
 
    matrix_destructor(A, N);
    matrix_destructor(B, K);
    matrix_destructor(R, Wmin);
 
    system("pause");
    return 0;
}
 
int ** matrix_constructor(int w, int h)
{
    int ** matrix_new = new int *[w];
 
    for (int i = 0; i < w; ++i)
        matrix_new[i] = new int[h];
 
    return matrix_new;
}
 
void matrix_print(int ** matrix, int w, int h)
{
    cout << "Ваш массив : " << endl << endl;
    for (int i = 0; i < w; ++i)
    {
        for (int j = 0; j < h; ++j)
            cout << matrix[i][j] << " ";
        cout << endl;
    }
}
 
void matrix_fill(int **matrix, int w, int h)
{
    srand(unsigned(time(NULL)));
 
    for (int i = 0; i < w; ++i)
        for (int j = 0; j < h; ++j)
            matrix[i][j] = ((rand() % 100));
}
 
void matrix_destructor(int **matrix, int w)
{
    for (int i = 0; i < w; i++)
        delete[] matrix[i];
    delete[] matrix;    
}


Как я понял из кода, вы складывали матрицы;
Но тогда зачем вам вводить размерности их, ведь они должны совпадать.
Я чуток подправил, в качестве суммы вычисляется сумма элементов матрц, минимальной размерности.

Может пригодится.
1
Maxachev
0 / 0 / 0
Регистрация: 23.01.2014
Сообщений: 11
24.01.2014, 17:02  [ТС] #4
Спасибо огромное за помощь
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2014, 17:02
Привет! Вот еще темы с ответами:

Сложение двух массивов. - C++
Что то я не как не пойму если я пишу вот такой код #include &quot;stdafx.h&quot; #include &quot;conio.h&quot; int aaa = {2,3,4}, bbb = {5,6,7}, ...

Сложение двух массивов - C++
Вот условие задачи: Your friend is the person who does not like any limitations in the life. And when you said to him that it is totally...

Сложение и присвоение массивов - C++
Помогите пожалуйста! Ввод-два массива одной длинны.Необходимо их поэлементно сложить и записать в третий массив. Зарание большое...

ПРОСТЕЙШИЕ ПРОГРАММЫ НА С++ Сложение массивов - C++
Произвести сложение двух массивов 5х3 по правилам сложения матриц. #include &lt;iostream.h&gt; int main() { ...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
24.01.2014, 17:02
Ответ Создать тему
Опции темы

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