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

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

Войти
Регистрация
Восстановить пароль
 
Татьяна19
0 / 0 / 0
Регистрация: 08.05.2012
Сообщений: 25
#1

Сложить два упорядоченных массива в один - C++

22.10.2012, 19:57. Просмотров 671. Ответов 1
Метки нет (Все метки)

даны два упорядоченных по возростанию массива А(m) и B(n) получить из них путем слияния упорядоченный массив С. до этого дела с visual никогда не имел
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2012, 19:57
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сложить два упорядоченных массива в один (C++):

Объединить два упорядоченных массива в один - C++
Заданы два упорядоченных массива А и В, состоящих из N и M вещественных элементов соответственно. Соединить их в один массив С, так чтобы...

Объединить два упорядоченных по неубыванию массива в один - C++
Даны два одномерных массива, содержащих по N и M элементов, упорядоченных по не убыванию. Написать программу, формирующую новый массив из...

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

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

Объединить два упорядоченных по возрастанию массива в один. Нужны комментарии - C++
#include <iostream> #include<stdio.h> #include<conio.h> /* run this program using the console pauser or add your own getch,...

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

1
newsuperprogram
0 / 0 / 0
Регистрация: 21.10.2012
Сообщений: 23
22.10.2012, 22:31 #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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include "stdafx.h"
#include<iostream>
#include<Windows.h>
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int m;
    int n;
    int t;
    int i,j,k;
    double a[10];
    double b[10];
    double c[20];
    cout<<"Введите размер первого массива (не больше 10)\n";
    cin>>m;
    cout<<"Введите размер второго массива (не больше 10)\n";
    cin>>n;
    t=m+n;
    cout<<"Введите элементы первого массива в возрастающем порядке\n";
    for(i=0;i<m;i++)
    {
        cout<<"Введите элемент "<<i+1<<"\n";
        cin>>a[i];
        if(i!=0 && a[i]<a[i-1])
        {
            do
            {
                cout<<"Введите элемент "<<i+1<<"\n";
                cin>>a[i];
            }
            while(a[i]<a[i-1]);
        }
    }
    cout<<"Введите элементы второго массива в возрастающем порядке\n";
    for(j=0;j<n;j++)
    {
        cout<<"Введите элемент "<<j+1<<"\n";
        cin>>b[j];
        if(j!=0 && b[j]<b[j-1])
        {
            do
            {
                cout<<"Введите элемент"<<j+1<<"\n";
                cin>>b[j];
            }
            while(b[j]<b[j-1]);
        }
    }
    i=0;
    j=0;
    for(k=0;k<t;k++)
    {
        if(i!=m && j!=n)
        {
            if(a[i]<=b[j])
            {
                c[k]=a[i];
                i++;
            }
            else if(a[i]>b[j])
            {
                c[k]=b[j];
                j++;
            }
        }
        else
        {
            if(i==m)
            {
                c[k]=b[j];
                j++;
            }
            else if(j==n)
            {
                c[k]=a[i];
                i++;
            }
        }
    }
    cout<<"Упорядоченный массив, полученный в результате слияния двух входных массивов:\n";
    for(k=0;k<t;k++)
    {
        cout<<c[k]<<" ";
    }
    cout<<"\n";
    return 0;
}
Программу сам проверил, всё работает. Если возникнут вопросы или что-то нужно будет добавить в программу - спрашивай.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2012, 22:31
Привет! Вот еще темы с ответами:

Как сложить два символьных массива в один? - C++
Извиняюсь если вопрос уже был, но я так и не нашел ответа. Как записать два слова в один массив/указатель, чтобы его потом можно было...

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

Объединить два упорядоченных связанных списка в один через функцию merge - C++
Совсем недавно начал изучение списков в С++(как и сам С++), срочно требуется ваша помощь по решению следующей задачи: Объединить два...

Описать функцию, которая объединяет два упорядоченных по возрастанию списка в один - C++
2)Описать функцию, которая объединяет два упорядоченных по возрастанию списка в один. не знаю как делать помогите пожалуйста!!!!


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

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

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