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

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

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

Два разных массива записать последовательно в третий - C++

25.12.2008, 22:58. Просмотров 927. Ответов 9
Метки нет (Все метки)

Пожалуйста помогите!
Ввод-два массива разной длинны.Записать в третий-сначала идут элементы первого затем второго массива.
Зарание большое СПАСИБО!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2008, 22:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Два разных массива записать последовательно в третий (C++):

Дано два одномерных массива, создать третий массив который содержит элементы первого массива - C++
Дано два одномерных массива, создать третий массив который содержит элементы первого массива, но без элементов второго массива. Заранее...

Как записать два разных класса в массив? - C++
допустим есть vector<class_a> cont_a; vector<class_b> cont_b; // тут мы их заполнили допустим по 800 элементов в каждом векторе.и...

Массив: Сформировать два массива и вывести последовательно друг под другом - C++
Ребят такой вопрос можно допустим сформировать два массива и при выводе их они располагались друг под другом т.е. вот так 1 2 3 4 5 1 2...

Слить два упорядоченных массива в третий - C++
помогите чутка,надо слить два массива в один и упорядочить,создал два упорядоченых массива а как ввести их значения в 3ий не пойму#include...

Отсортировать два массива и сформировать третий, так же упорядоченный - C++
Задания к лабораторной работе. Выполните приведенные ниже задания. 1. Даны два целочисленных массива 2. Реализуйте алгоритмы...

Сложение первого и второго элементов массива и записать результат в третий - C++
Cоздать массив из 5 элементов. Mas-4 ;Mas-4; Mas-7; Mas-3; Mas-9. Произвести сложение первого и второго элементов массива и записать...

9
Sinys
27 / 27 / 2
Регистрация: 25.12.2008
Сообщений: 185
Завершенные тесты: 1
25.12.2008, 23:20 #2
C++
1
2
3
4
5
6
int a[n],b[m],res[r];
r=n+m;
for (i=0; i<r; i+2)
res[i]=a[j] && j++;
for (i=0; i<r; i+2)
res[i+1]=b[j] && j++;
Чтобы елементы массива шли поочередно... (тоесть сначала 1й елемент 1го массива потом 1й елемент второго, потом 2й елемент первого и тд...)
0
demanxxx
0 / 0 / 0
Регистрация: 22.11.2008
Сообщений: 36
25.12.2008, 23:35  [ТС] #3
Увы,не работает!
0
Sinys
27 / 27 / 2
Регистрация: 25.12.2008
Сообщений: 185
Завершенные тесты: 1
25.12.2008, 23:43 #4
Увы,не работает!
А блин мысли о своем, не то написал...
C++
1
2
3
4
5
6
int a[n],b[m],res[r],j=0,r;
r=n+m;
for (i=0; i<n; i++)
res[i]=a[i];
for (i=n; i<r; i++)
res[i]=b[j] && j++;
0
BornLeader
50 / 46 / 1
Регистрация: 16.05.2008
Сообщений: 162
26.12.2008, 13:36 #5
demanxxx, вот такое решение например:
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
#include <iostream>
using namespace std;
 
template <class T,int size>
void Print(ostream& os,T* t)
{
  for(size_t i=0;i<size;i++)
    os << *(t+i) << " ";
  os << endl;
}
 
int main(void)
{
  int a[]={1,2,3,4};
  int b[]={9,8,7,6,5,4};
  int* c = new int[(sizeof(a)+sizeof(b))/sizeof(int)];
  memcpy(c,a,sizeof(a));
  memcpy(c+sizeof(a)/sizeof(int),b,sizeof(b)); 
 
  Print<int,sizeof(a)/sizeof(int)>(cout,a);
  Print<int,sizeof(b)/sizeof(int)>(cout,b);
  Print<int,(sizeof(a)+sizeof(b))/sizeof(int)>(cout,c);
 
  delete c;
  return 0;
}
0
bmw666
9 / 7 / 1
Регистрация: 25.12.2008
Сообщений: 40
26.12.2008, 18:09 #6
Sinys, ты конечно идею написал правильно но ошибок куча. Например при объявлении масива "res" ты его размер задаешь "r" хотя это самое "r" еще даже не обявилось хотя и тогда в нем мусор. и "i" ты не объявлял пару раз.
Задачки писать желательно у себя а потом проаереные отписывать... Новачки ведь не поймт ошибок. Тем более на иностранном языке
Вот рабочая модель:
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
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#define n 10
#define m 5
 
int main()
{
    int a[n], b[m], r, j=0;
    r=n+m;
    int res[r];
    for (int i=0; i<n; i++)
    {
        a[i]=rand()%10;
        cout << a[i] << " ";
    }
    cout << endl;
    for (int i=0; i<m; i++)
    {
        b[i]=rand()%10;
        cout << b[i] << " ";
    }
    cout << endl;
    for (int i=0; i<n; i++)
    {
        res[i]=a[i];
        cout << res[i] << " ";
    }
    for (int i=n; i<r; i++)
    {
        res[i]=b[j];
        cout << res[i] << " ";
        j++;
    }
    getch();
}
1
demanxxx
0 / 0 / 0
Регистрация: 22.11.2008
Сообщений: 36
26.12.2008, 19:11  [ТС] #7
Спасибо всем!Это я уже сам накалякал.
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
#include<stdio.h>
#include<windows.h>
#include<conio.h>
#include< iostream>
using namespace std;
void main()
{
    const int n=13,m=5,r=8;
    int a3[n]={0},i1;
    int a1[m]={0},i2;
    int a2[r]={0},i3=0;
    cout<<"vvod elem:\n";
    for(i1=0;i1<m;i1++)
    {
        cout<<"a1["<<i1<<"]= ";
        cin >> a1[i1];
    }
    cout<<"\n";    
    for(i2=0;i2<r;i2++)
    {
        cout<<"a2["<<i2<<"]= ";
        cin >> a2[i2];
    }    
    int i=0,j=0;
    
    for (i=0;i<m;i++)
    {
        a3[i]=a1[i];
    }
        int w=5,v=0;
        for (w=5,v=0;w<n,v<r;w++,v++)
        {
            a3[w]=a2[v];
        }
        cout<<"\n";
    for(i3=0;i3<n;i3++)
    {
        cout<<"a3["<<i3<<"]= "<<a3[i3]<<"\n";
    }
    getch();
}
0
bmw666
9 / 7 / 1
Регистрация: 25.12.2008
Сообщений: 40
26.12.2008, 19:25 #8
Да не за что
ЗЫ: Спасибо просто нажимай внизу, справа поста.
0
Sinys
27 / 27 / 2
Регистрация: 25.12.2008
Сообщений: 185
Завершенные тесты: 1
26.12.2008, 19:43 #9
Какието большие у вас коды... куча вложеных функций, накой чёрт не пойму.. там всего то надо 2 цикла на заполнение начальных массивов, 2 цикла на суммирование и 1 на вывод... накой столько { } ??
0
bmw666
9 / 7 / 1
Регистрация: 25.12.2008
Сообщений: 40
26.12.2008, 23:50 #10
Sinys, Короче полюбом нельзя... см. Сегодня, 17:09
Кстати у меня все те циклы что ты сказал и даже на один меньше.
0
26.12.2008, 23:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2008, 23:50
Привет! Вот еще темы с ответами:

Сложение первого и второго элементов массива и записать результат в третий - C++
создать массив из 5 элементов. Mas-3 ;Mas-4; Mas-1; Mas-5; Mas-2. Произвести сложение первого и второго элементов массива и записать...

Слить два массива в третий отсортированный по убыванию, без дублей - C++
Даны два массива. Массив А состоит из N элементов и отсортирован по возрастанию. Массив B состоит из M элементов и отсортирован по...

Записать в третий массив С все элементы из массива B, которые не встречаются в массиве А - C++
Есть два массива A и B. Нужно записать в третий массив С все элементы из массива B, которые не встречаются в массиве А. Что-то не...

Даны два упорядоченных массива. Слить их в третий, но чтобы элементы не повторялись - C++
Даны два упорядоченных массива. Нужно слить их в третий, но чтобы элементы не повторялись. (один проход по массивам)


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

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

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