Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/21: Рейтинг темы: голосов - 21, средняя оценка - 4.52
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 26
1

Объединить два массива отсортированных по убыванию

15.03.2016, 20:18. Показов 3835. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана массивы a[N] и b[M]. Элементы массива a отсортированы в порядке убывания, массива b – в порядке возрастания. Образовать из этих массивов убывающий массив c из M+N элементов. Количества M,N и значения элементов массивов a,b ввести с клавиатуры. Ограничения: М<=10, N<=10, диапазон значений элементов [-10; 30], тип элементов – целые.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.03.2016, 20:18
Ответы с готовыми решениями:

Объединить два отсортированных односвязных списка
Даны два односвязных списка. Первый отсортирован по возрастанию, а второй по убыванию. Сформировать...

Объединить два упорядоченных по возрастанию массива в один, упорядоченный по убыванию
Здравствуйте, форумчане. Помогите пожалуйста сделать реализацию программы, задача: У меня...

Объединить два упорядоченных по возрастанию массива так что бы результат был упорядоченным по убыванию
Дано два массива А и В размера 5, элементы которых идут по возрастанию. Объединить эти массивы...

Слить два отсортированных массива в 3й(с сортированием)
Нужно слить 2 отсортированных массива в 3й , при этом отсортировав и его, в отдельной функции , с...

1
 Аватар для meJevin
161 / 153 / 92
Регистрация: 18.11.2015
Сообщений: 677
15.03.2016, 22:21 2
Лучший ответ Сообщение было отмечено slater как решение

Решение

На
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#include <iostream>
#include <conio.h>
#include <iomanip>
#include <limits>
#define NOMINMAX
#include <windows.h>
 
template<typename Type>
void cinNum(Type& var, char const * text) {
 
    int intLimit = std::numeric_limits<int>::max();
 
    std::cout << text;
    while (!(std::cin >> var) || (std::cin.peek() != '\n')) {
        std::cin.clear();
        std::cin.ignore(intLimit, '\n');
        std::cout << text;
    }
 
}
 
void swap(int& a, int& b) {
    int temp_a = a;
    a = b;
    b = temp_a;
}
 
int main() {
 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    const int ARR_LIMIT = 10;
    int N = ARR_LIMIT + 1, M = ARR_LIMIT + 1;
    
    // ввод размеров
    while(N > ARR_LIMIT)
        cinNum(N, "Введите кол-во элементов в массиве a: ");
    while(M > ARR_LIMIT)
        cinNum(M, "Введите кол-во элементов в массиве b: ");
    
    // выделение памяти
    int *a = new int[N];
    int *b = new int[M];
 
 
    system("cls");
    // ввод значений
    std::cout << "\n\n";
    for (int i = 0; i < N; i++) {
        int number = -99;
        std::cout << "a[" << i << "]\n";
        while(number < -10 || number > 30)
            cinNum(number, "Ззначение элемента: ");
        a[i] = number;
    }
    std::cout << "\n\n";
    for (int i = 0; i < M; i++) {
        int number = -99;
        std::cout << "b[" << i << "]\n";
        while (number < -10 || number > 30)
            cinNum(number, "Ззначение элемента: ");
        b[i] = number;
    }
 
    // сортировка массива a (пузырек)
    for (int i = 0; i<N; ++i)
        for (int j = i + 1; j<N; ++j)
            if (a[j]>a[i])swap(a[i], a[j]);
 
    // сортировка массива b (пузырек)
    for (int i = 0; i<M; ++i)
        for (int j = i + 1; j<M; ++j)
            if (b[j]<b[i])swap(b[i], b[j]);
 
 
    // новый массив с с размером N+M
    int *c = new int[N+M];
 
    int i;
    // из массива а в массив с
    for (i = 0; i < N; i++)
        c[i] = a[i];
    // из массива b в массив с
    for (int j = 0; j < M; j++, i++)
        c[i] = b[j];
 
    // сортировка массива c (пузырек)
    for (int i = 0; i<(N + M); ++i)
        for (int j = i + 1; j<(N + M); ++j)
            if (c[j]>c[i])swap(c[i], c[j]);
 
    system("cls");
 
    std::cout << "\nОтсортированный (убывание) массив а:\n";
    for (int i = 0; i < N; i++)
        std::cout << "a[" << i << "] = " << a[i] << "\n";
 
    std::cout << "\nОтсортированный (возрастание) массив b:\n";
    for (int i = 0; i < M; i++)
        std::cout << "b[" << i << "] = " << b[i] << "\n";
 
    std::cout << "\nОтсортированный (убывание) массив c:\n";
    for (int i = 0; i < (N+M); i++)
        std::cout << "c[" << i << "] = " << c[i] << "\n";
 
    // освобождение памяти
    delete[] a, b, c;
 
    _getch();
}
Я system("cls") просто для красоты написал, можешь убрать, если боишься её.
0
15.03.2016, 22:21
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.03.2016, 22:21
Помогаю со студенческими работами здесь

Объединить два отсортированных массива
Задача такая. &quot;Заданы два упорядоченных по возрастанию массива. Составить из их значений третий,...

Объединить два отсортированных массива
Даны два отсортированы по возрастанию значений массивы вещественных чисел. Сформировать из них один...

Как объединить два отсортированных массива?
int MyArr1 = new int; int MyArr2 = new int; for (int i = 0; i &lt; length;...

Даны два отсортированных одномерных массива, объединить их в один, тоже отсортированный
Даны два отсортированных одномерных массива, объединить их в один, тоже отсортированный. Помогите...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
Компьютер для начинающих
hw_wired 28.01.2025
Введение в мир компьютерных технологий В современном мире информация стала одним из важнейших ресурсов человечества, определяющим развитие общества и технологий. Наша жизнь неразрывно связана с. . .
[golang] 189. Rotate Array
alhaos 28.01.2025
Повороты рукоятки, целочисленный слайс нужно сдвинуть на целое положительное число. Мне очень нравится решение на GO / / https:/ / leetcode. com/ studyplan/ top-interview-150/ package topInterview . . .
КуМир: решение задач на матрицы
bytestream 28.01.2025
КуМир представляет собой среду для обучения программированию, которая включает в себя мощные инструменты для работы с матрицами. Матрица в программировании - это двумерный массив, состоящий из. . .
КуМир: решение задач на строки
bytestream 28.01.2025
В системе программирования КуМир работа со строковыми данными является одним из важнейших аспектов создания программ. Строки представляют собой последовательности символов, заключенные в кавычки,. . .
КуМир: решение геометрических задач
bytestream 28.01.2025
Программирование геометрических задач в среде КуМир становится всё более актуальным в обучении школьников и студентов. КуМир — это разработанная в России обучающая программная среда, предназначенная. . .
КуМир, исполнитель Водолей: Задачи и решения
bytestream 28.01.2025
КуМир — это образовательная среда для обучения программированию. Она предлагает пользователям разнообразные инструменты для разработки и отладки программ, что особенно ценно для студентов и. . .
КуМир, исполнитель Чертежник: Решение задач
bytestream 28.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения основам программирования и алгоритмизации. Исполнитель Чертежник работает на координатной плоскости, где может. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru