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

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

Войти
Регистрация
Восстановить пароль
 
Макс123456
1 / 1 / 0
Регистрация: 24.01.2014
Сообщений: 17
#1

Даны одномерные массивы А и В, длины m и n соответственно - C++

26.01.2014, 14:50. Просмотров 357. Ответов 3
Метки нет (Все метки)

Даны одномерные массивы А и В, длины m и n соответственно. Рассортировать их в порядке возрастания и слить их в один массив длиной m+n.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.01.2014, 14:50     Даны одномерные массивы А и В, длины m и n соответственно
Посмотрите здесь:

Даны одномерные массивы - C++
Даны одномерные массивы А и В размерности N. С помощью функций выполнить: ─ заполнить массив С числами, получающимися попарным...

Даны два одномерные массивы A (a [1], a [2], ..., a [n]) и B (b [1], b [2], ..., b [m]), размеры равны n и m . Упорядочить их указанными методами - C++
Даны два одномерные массивы A (a , a , ..., a ) и B (b , b , ..., b ), размеры которых равны n и m соответственно. Упорядочить их...

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

Даны массива a и b из n и m целых чисел, соответственно - C++
Даны массива a и b из n и m целых чисел, соответственно. В каждом массиве - строго возрастающая последовательность чисел. Сформировать...

Сложить файлы q1 и q2 содержащие соответственно слова с f файла четной и нечетной длины - C++
Дано файл f. Сложить файлы q1 и q2 содержащие соответственно слова с f файла четной и нечетной длины.Помогите пожалуйста очень нужно буду...

Даны действительные числа х1, у1, х2, у2, …,х10, у10. Найти периметр десятиугольника, вершины которого имеют соответственно координаты (х1, у1), (х2, - C++
Даны действительные числа х1, у1, х2, у2, …,х10, у10. Найти периметр десятиугольника, вершины которого имеют соответственно координаты (х1,...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
26.01.2014, 16:39     Даны одномерные массивы А и В, длины m и n соответственно #2
Макс123456,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<iostream>
#include<iterator>
#include<vector>
#include<algorithm>
#include<functional>
int main()
{
    std::vector <int> VectorA = {3,7,4,8,2,8,3,10,-5};
    std::vector <int> VectorB = {3,7,12,3,-12,6,37,3,2,6,100};
    std::cout<<"Vector A:\n";
    std::copy(VectorA.begin(),VectorA.end(),std::ostream_iterator<int> (std::cout," "));
    std::cout<<"\nVector B:\n";
    std::copy(VectorB.begin(),VectorB.end(),std::ostream_iterator<int> (std::cout," "));
    std::sort(VectorB.begin(),VectorB.end(),std::greater<int>());
    std::sort(VectorA.begin(),VectorA.end(),std::greater<int>());
    std::vector <int> VectorAB;
    std::merge(VectorA.begin(),VectorA.end(),VectorB.begin(),VectorB.end(),std::back_inserter(VectorAB));
    std::cout<<"\nMerge:\n";
    std::copy(VectorAB.begin(),VectorAB.end(),std::ostream_iterator<int> (std::cout," "));
 
}
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,911
26.01.2014, 17:24     Даны одномерные массивы А и В, длины m и n соответственно #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
55
56
57
58
59
60
61
62
63
64
#include <ctime>
#include <cstdlib>
#include <iostream>
 
void bubble_sort(int* a, int n) {
  for(int i = 1; i < n; ++i) {
    for(int j = n - 1; j >= i; --j) {
      if(a[j - 1] > a[j]) {
        int t = a[j - 1]; 
        a[j - 1] = a[j]; 
        a[j] = t;
      }
    }
  }  
}
 
void merge(const int* a, const int* b, int n, int m, int* c) {
  int i = 0, j = 0, k = 0;
  while((i < n) && (j < m)) {
    if(a[i] < b[j])
      c[k++] = a[i++];
    else
      c[k++] = b[j++];
  }  
  while(i < n) 
    c[k++] = a[i++];
  while(j < m) 
    c[k++] = b[j++];    
}
 
void show(const char* s, const int* a, int n) {
  std::cout << s;
  for(int i = 0; i < n; ++i)
    std::cout << ' ' << a[i];
  std::cout << std::endl;
}
 
void generate(int* a, int n) {
  for(int i = 0; i < n; ++i)
    a[i] = std::rand() % 10 + 1;  
}
 
int main() {
  const int n = 5;
  const int m = 10;
  
  int a[n], b[m], c[m + n];
  
  std::srand(std::time(NULL));
  generate(a, n);
  generate(b, m);
  
  show("a(unsorted): ", a, n);
  show("b(unsorted): ", b, m);  
  
  bubble_sort(a, n);
  bubble_sort(b, m);
  
  show("\na(sorted): ", a, n);
  show("b(sorted): ", b, m);      
  
  merge(a, b, n, m, c);  
  show("\nc: ", c, m + n);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.01.2014, 17:25     Даны одномерные массивы А и В, длины m и n соответственно
Еще ссылки по теме:

Одномерные массивы - C++
Здравствуйте уважаемы программисты! И снова я прибегаю к вашей помощи! Вот задачка: В одномерном массиве все отрицательные заменить...

Одномерные массивы - C++
Ввести одномерный массив из n элементов вещественного типа. Заменить все элементы, значения которых больше заданного числа Z, этим числом....

Одномерные массивы - C++
Заданны 2 одномерных массива A и B размерностью N. Составить программу, проверяющую можно ли, меняя местами элементы массива A получить...

Одномерные массивы - C++
Помогите пожалуйста. Вычислить сумму элементов последовательности x1, x2, …, xn (n&lt;=20), удовлетворяющих неравенству а &lt; x &lt; b....


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

Или воспользуйтесь поиском по форуму:
_include
Студент
52 / 52 / 12
Регистрация: 17.09.2012
Сообщений: 291
Записей в блоге: 2
Завершенные тесты: 1
26.01.2014, 17:25     Даны одномерные массивы А и В, длины m и n соответственно #4
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
#include "stdafx.h"
#include <math.h>
#include <stdio.h>
#include <conio.h>
#include <locale>
#include <iostream>
 
#define n 5
#define m 6
 
using namespace std;
 
void print(int *mas, int q)
{
    for(int i = 0; i < q; i++)
    cout << " " << mas[i];
    cout << endl;
}
 
int main()
{
    int A[m]={1,2,6,-9,5,-89};
    int B[n]={33,69,-59,-1,2};
    cout << "Mas A: "   ;print(A,m);
    cout << "Mas B: "   ;print(B,n);
    int *C = new int [n+m];
    for(int  i=0; i < m; i++) 
    {            // i - номер прохода
        for( int j = m-1; j > i; j-- )
        {     // внутренний цикл прохода
           if ( A[j-1] > A[j] ) 
           {
                 int tmp=A[j-1]; 
                 A[j-1]=A[j]; 
                 A[j]=tmp;
            }
        }
    }
    cout << "Sort mas A: " << endl;
    print (A,m);
    for(int i=n-1; i>=0; i--)
        for(int j=0; j<i; j++)
            if(B[j] > B[j+1])
                {
                    int temp = B[j];
                    B[j] = B[j+1];
                    B[j+1] = temp;
                }
 
    cout << "Sort mas B: " << endl;
    print (B,n);
    for (int i=0; i<m; i++)
        C[i] = A[i];
    for (int i=m; i<n+m; i++)
        C[i] = B[i - m];
   print(C,m+n);
    _getch();
    delete []C;
    return 0;
}
Yandex
Объявления
26.01.2014, 17:25     Даны одномерные массивы А и В, длины m и n соответственно
Ответ Создать тему
Опции темы

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