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

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

Войти
Регистрация
Восстановить пароль
 
st-kontora
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 71
#1

Соединение массивов. Не могу сообразить. - C++

27.03.2011, 00:10. Просмотров 469. Ответов 5
Метки нет (Все метки)

Задание таково.
Создать шаблон функции, а так же к ней тело проги которое будет из 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
# include <iostream>
using namespace std;
template <class type>
int mass(int n,type mas[])  // функция для ввода значений массива, которая сразу упорядочивает
{                                                                                         его по возрастанию
    cout<<"Vvedite elementy massiva:"<<endl;
    for (int i=0;i<n;i++)
        cin>>mas[i];
    for (int i=0;i<n-1;i++)
        for (int j=n-1;j>i;j--)
            if (mas[j]<mas[j-1])
            {
                int t=mas[j];
                mas[j]=mas[j-1];
                mas[j-1]=t;
            }
return 0;
}
void main()              //тело программы
{
    int const n=5;
    int const z=10;
    int a[n], b[n], c[z]; //ввод массивов
    mass(n,a);                             //вбивание первого массива
    cout<<"Massiv 1 : "<<endl;
    for (int i=0;i<n;i++)
        cout<<a[i]<<" ";              //вывод на экран 1ого массива
    cout<<endl;
    {
    mass(n,b);                              //вбивание второго массива
    cout<<"Massiv 2 : "<<endl;
    for (int i=0;i<n;i++)
        cout<<b[i]<<" ";              //вывод на экран 2ого массива
    cout<<endl;
    }
        for (int i=0;i<z;i++)          //создание 3его массива из 2ух предыдущих
    c[i]=a[i]+b[i];                           //!!!!!!!!!!
    cout<<"Massiv 3 : "<<endl; 
    for (int i=0;i<10;i++)
        cout<<c[i]<<" ";                //вывод на экран
    cout<<endl;
}
Код рабочий!!!
Первый массив вбивает и упорядочивает, второй тоже.
А третий создает но в строчке помеченной восклицательными знаками он просто складывает 1ый со вторым а надо чтобы в ряд встали и упорядочились.
Например массив А = 4,3,5,7,9
Масив Б=10,2,6,1,8
то масив С должен вывестись на экран как 1,2,3,4,5,6,7,8,9,10.
ВОПРОС!
КАК СОЗДАТЬ ТРЕТИЙ МАССИВ ИЗ ДВУХ ПРЕДЫДУЩИХ, НО ТАК ЧТОБЫ ЗНАЧЕНИЯ И ПЕРВОГО И ВТОРОГО В НЕМ ПРИСУТСТВОВАЛИ?????


Заранее благодарен! Спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2011, 00:10     Соединение массивов. Не могу сообразить.
Посмотрите здесь:

не могу сообразить) - C++
дана f(x). дан отрезок на котором расположены положительные корни дана точность E могу написать функцию, для нахождения одного корня...

Не могу сообразить, замучался - C++
Описать переменную «Расписание», содержащую: день недели, номер пары, название предмета, фамилию преподавателя. Вывести полную информацию о...

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

Компиляция кода... не могу сообразить. - C++
Доброго времени суток уважаемые форумчане! Прошу помочь с решением проблемы: есть исходники memtest86+, скачал чтоб разобраться как...

Не могу сообразить как написать - C++
Нужно в числе N посчитать сколько раз встречается каждая цифра. Нужно сделать через массивы.

не могу сообразить задачу, объясните её пожалуйста - C++
1.Определить все симметричные натуральные числа в промежутке от А до В (А и В вводятся с клавиатуры). Я пытался решить задачу...

Не могу сообразить как написать цикл - C++
не могу сообразить как написать вот этот цикл в С++

Не могу сообразить с сортировкой, и с последним пунктом - C++
Описать структуру STUDENT, содержащую следующие поля: Фамилия и инициалы номер группы успеваемость(массив из пяти элементов) ...

не могу сообразить процесс или предпроцесс это - C++
max=A; процесс или предпроцесс max_i=0; процесс или предпроцесс Добавлено через 1 минуту помогите пожалуйста

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

соединение двух массивов - C++
здравствуйте! есть задача: даны два неубывающих массива x и y. найти их соединение, то есть неубывающий массив z, содержащий их общие...

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vandris
63 / 63 / 13
Регистрация: 19.01.2011
Сообщений: 92
27.03.2011, 08:44     Соединение массивов. Не могу сообразить. #2
КАК СОЗДАТЬ ТРЕТИЙ МАССИВ ИЗ ДВУХ ПРЕДЫДУЩИХ, НО ТАК ЧТОБЫ ЗНАЧЕНИЯ И ПЕРВОГО И ВТОРОГО В НЕМ ПРИСУТСТВОВАЛИ?????
C++
1
2
3
for (int i = 0; i < z; i++)
    cout << (c[i] = (i < n ? a[i] : b[i-n])) << " "; //Здесь сначала проверяется условие i < n. Если оно выполняется c[i] = a[i], 
                                                     //и если не выполняется, то c[i] = b[i-n]. Потом выводится на экран полученный c[i]
Думаю, куда это написать у себя в коде поймете. И да, я бы рекомендовал сначала объединить массивы, а потом уже сортировать, а то введете
массив А = 4,3,5,7,9
Масив Б=10,2,6,1,8
и у вас программа сначала отсортирует оба массива, а потом уже объединит, и будет массив С = 3 4 5 7 9 1 2 6 8 10.
widoki
Сообщений: n/a
27.03.2011, 11:25     Соединение массивов. Не могу сообразить. #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
#include <iostream>
using namespace std;
template <class type>
void mass(int n,type mas[])
{                                                                       
        cout<<"Vvedite elementy massiva:"<<endl;
        for (int i=0;i<n;i++)
                cin>>mas[i];       
}
template <class T>
void sort (int n, T mas[])
{
for (int i=0;i<n-1;i++)
                for (int j=n-1;j>i;j--)
                        if (mas[j]<mas[j-1])
                        {
                                int t=mas[j];
                                mas[j]=mas[j-1];
                                mas[j-1]=t;
                        }
}
void main()              
{
        int const n=5;
        int const z=10;
        int a[n], b[n], c[z];
        mass(n,a);                          
        cout<<"Massiv 1 : "<<endl;
        for (int i=0;i<n;i++)
                cout<<a[i]<<" ";              
        cout<<endl;
        
        mass(n,b);                              
        cout<<"Massiv 2 : "<<endl;
        for (int i=0;i<n;i++)
                cout<<b[i]<<" ";             
        cout<<endl;
        
        for (int i=0; i<n; i++)
        {
            c[i]=a[i];
        }
        int j=0;
        for (int i=n; i<z; i++)
        {
            c[i]=b[j];
            j++;
        }
        sort (z, c);
        cout<<"Massiv 3 : "<<endl; 
        for (int i=0;i<z;i++)
                cout<<c[i]<<" ";                
        cout<<endl;
}
st-kontora
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 71
27.03.2011, 22:30  [ТС]     Соединение массивов. Не могу сообразить. #4
Спасибо всем! Еле разобрался))
Только вот что делает команда template???
Ариман
20 / 20 / 1
Регистрация: 18.09.2010
Сообщений: 28
27.03.2011, 22:36     Соединение массивов. Не могу сообразить. #5
Цитата Сообщение от st-kontora Посмотреть сообщение
Спасибо всем! Еле разобрался))
Только вот что делает команда template???
шаблон функции
st-kontora
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 71
28.03.2011, 16:05  [ТС]     Соединение массивов. Не могу сообразить. #6
Спасибо еще раз всем) Тема закрыта
Yandex
Объявления
28.03.2011, 16:05     Соединение массивов. Не могу сообразить.
Ответ Создать тему
Опции темы

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