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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.63
oper24
1 / 1 / 0
Регистрация: 12.07.2010
Сообщений: 55
#1

Как из двух массивов создать третий? - C++

15.10.2010, 14:41. Просмотров 4129. Ответов 8
Метки нет (Все метки)

Допустим дан массив А[n] и B[m], как создать массив С[n+m]???
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2010, 14:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как из двух массивов создать третий? (C++):

Создать третий массив, в котором нужно собрать элементы двух заданных массивов - C++
Даны два массива : А и B. Необходимо создать третий массив, в котором нужно собрать: Элементы обоих массивов; -Общие элементы двух...

Из двух массивов создать третий, включающий уникальные элементы первого, с использованием указателей - C++
Ребята, всем доброго вечера! Помогите мне пожалуйста разобраться с моей бИдой. Я дико извиняюсь, если такая тема мусолилась раньше, я...

Как из двух однонаправленных списков создать третий, который состоит из нечетных элементов предыдущих двух? - C++
ребят,подскажите пожалуйста как из двух однонаправленных списка создать третий который состоит из нечетных елементов преведущих двух....

Обьединение двух массивов в третий (с чередованием их елементов). Как сделать задачу? - C++
Дано 2 одинаковых по длине одномерных массива.Нужно обьединить их в 3ий, чередуя елементы 1го и 2го массивов. --- То есть, если у...

Из двух массивов сформировать третий - C++
помогите решить задачу, плиз!!!! из массивов A и B сформировать массив C так, чтобы элементы массива располагались следующим образом:...

Объединение двух массивов в третий - C++
Как это можно сделать?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
15.10.2010, 14:51 #2
В смысле сделать массив С, длина которого равна длина A + длина B? Или же нужно сделать сложение массивов?
oper24
1 / 1 / 0
Регистрация: 12.07.2010
Сообщений: 55
15.10.2010, 14:55  [ТС] #3
Цитата Сообщение от dihlofos Посмотреть сообщение
В смысле сделать массив С, длина которого равна длина A + длина B? Или же нужно сделать сложение массивов?
массив С должен состоять из элементов мас А и В.
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
15.10.2010, 15:35 #4
Попробуйте как-нибудь так:
C++
1
2
3
4
5
for(i=0; i<aSize; i++)
    c[i]=a[i];
 
for(i=0; i<bSize; i++)
    c[i+aSize]=b[i];
, где aSize и bSize - размеры a и b соответственно.

Добавлено через 25 минут
Или ещё лучше, ввести дополнительную переменную для индексации массива c. Так можно объединять и большее число массивов.
C++
1
2
3
4
5
int j=0;
for(i=0; i<aSize; i++)
    c[j++] = a[i];
for(i=0; i<bSize; i++)
    c[j++] = b[i];
oper24
1 / 1 / 0
Регистрация: 12.07.2010
Сообщений: 55
15.10.2010, 16:00  [ТС] #5
А если так??? Только вот не пойму как вывести на экран mas_sum???


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
const int s1=3, s2=5,s3=s1+s2;
 int mas1[s1],mas2[s2],mas_sum[s1+s2];
 int p=0;
 
 for(int i=0;i<s1;i++){
  mas1[i]=rand()%100;
  cout<<mas1[i]<<" ";
 }
 
 cout<<"\n\n";
 
 for(int i=0;i<s2;i++){
  mas2[i]=rand()%100;
  cout<<mas2[i]<<" ";
 }
 cout<<"\n\n";
 
 for(int i=0;i<s1;i++)
  mas_sum[i]=mas1[i];
 
 
 for(int i=s1;i<s3;i++)
  mas_sum[i]=mas2[p];
  p++;
 
  
 
}
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
15.10.2010, 16:12 #6
А в чём, собственно проблема?
C++
1
2
3
4
for(int i=0;i<s3;i++)
   {
    cout<<mas_sum[i]<<' ';
   }
Кстати, последний цикл заключите в фигурные скобочки:
C++
1
2
3
4
5
for(int i=s1;i<s3;i++)
{
  mas_sum[i]=mas2[p];
  p++;
}
oper24
1 / 1 / 0
Регистрация: 12.07.2010
Сообщений: 55
15.10.2010, 16:29  [ТС] #7
так сейчас попробую...

Добавлено через 12 минут
Все получилось... И еще вопрос за что сдесь отвечает переменная
C++
1
int p=0
ForEveR
В астрале
Эксперт С++
7971 / 4733 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
15.10.2010, 16:30 #8
oper24,
C++
1
2
mas_sum[i]=mas2[p];
  p++;
Счетчик. С нуля и до тех пор пока i<s3
easybudda
Модератор
Эксперт CЭксперт С++
9531 / 5524 / 932
Регистрация: 25.07.2009
Сообщений: 10,611
15.10.2010, 16:36 #9
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
 
#define RAND(arr, size, limit) ({ int i; for ( i = 0; i < size; ++i ) arr[i] = rand() % limit; })
#define PRINT(arr, size) ({ int i; for ( i = 0; i < size; ++i ) printf("%d%c", arr[i], i < size - 1 ? ' ' : '\n' ); })
 
#define SIZE_A 7
#define SIZE_B 13
 
int main(void){
    int arr_a[SIZE_A], arr_b[SIZE_B], arr_c[SIZE_A + SIZE_B];
 
    srand(time(NULL));
 
    RAND(arr_a, SIZE_A, 10);
    RAND(arr_b, SIZE_B, 10);
    memcpy(arr_c, arr_a, sizeof(int) * SIZE_A);
    memcpy(arr_c + SIZE_A, arr_b, sizeof(int) * SIZE_B);
 
    printf("A: ");
    PRINT(arr_a, SIZE_A);
    printf("B: ");
    PRINT(arr_b, SIZE_B);
    printf("C: ");
    PRINT(arr_c, (SIZE_A + SIZE_B));
 
    exit(0);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2010, 16:36
Привет! Вот еще темы с ответами:

На основе двух массивов сформировать третий - C++
Здравствуйте уважаемые программисты, мне завтра сдавать задание, а я все никак не могу разобраться, помогите кто чем может :( Задание ...

Перенести записи с двух массивов в третий - C++
Помогите пожалйста))) Очень нужно) Можна идею подсказать как сделать задание, а то я не совсем понимаю как его делать. Задание: ...

Из данных двух массивов образовать третий массив - C++
Из данных двух массивов образуется третий массив: сначала элементы первого массива, в конце элементы второго массива; помогите...

Объединить записи двух массивов и занести их в третий - C++
Заданы два массива записей. Первый содержит данные - фамилии и адреса, второй - соответствующие номера телефонов. Составить программу,...


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

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

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