0 / 0 / 0
Регистрация: 17.10.2016
Сообщений: 8
1

Переписать по очереди по два элемента их входных массивов

11.12.2016, 19:54. Показов 793. Ответов 0

Author24 — интернет-сервис помощи студентам
Всем привет, встретился с проблемой, которую не могу решить. В общем, задание звучит так : Создать третий массив, в который переписать по очереди по два элемента из входных массивов; начать с массива mas2. При выдачи третьего выходного массива получается какой-то бред. Прошу помощи у знающих людей)
Вот сам код :
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
#include <iostream>  // Подключенные библиотеки
#include <crtdbg.h>
#define _CRT_SECURE_NO_WARNINGS
using namespace std;
void SozdMass(int*, int*); // Прототипы функций 
void Output(int aN, int*, int*, int*); // Прототипы функций 
const int size = 10;
#define _DEBUG // Контроль утечки памяти 
#define _CRTDBG_MAP_ALLOC  // Контроль утечки памяти 
int main()
{
    int Arr1;    //Будущий реальный размер массива
    do
    {
        cout<<"Enter dimmension of your array: ";    //Введите размерность массива
        scanf("%d", &Arr1);
    }
    while(Arr1<1);
    int* arr1= new int[Arr1];    //динамически выдел яем память
    for ( int i = 0; i < Arr1; i++)
    {
        *(arr1+i) = rand()%10;
    }
    int Arr2;    //Будущий реальный размер массива
    do
    {
        cout<<"Enter dimmension of your array: ";    //Введите размерность массива
        scanf("%d", &Arr2);
    }
    while(Arr2<1);
    int* arr2= new int[Arr2];    //динамически выделяем память
    for ( int i = 0; i < Arr2; i++)
    {
        *(arr2+i) = rand()%10;
    }
    int arr3[size * 2];
    int j = 0, hr2 = 0, hr1 = 0;  // Инициализируем переменные
    //SozdMass(A, B);//Подключаем функцию которая заполнит массивы 
    for (int i = 0; i< size * 2; i++)
    {
        if (j == 0 || j % 2 == 0)   // Условие 
        {
            arr3[i] = *(arr1+hr1);
            i++;
            hr2++;
            arr3[i] = *(arr1+hr1);
            j++;
            hr2++;
        }
        else
        {
            arr3[i] = *(arr1+hr2);
            i++;
             hr1++;
            arr3[i] = *(arr1+hr2);
            j++;
             hr1++;
        }
    }
    Output(size,arr1, arr2, arr3); // Подключаем функцию которая выводит результат
    _CrtMemBlockHeader; // Контроль утечки памяти
    delete [] arr1;
    delete [] arr2;
    return 0;
}
 
 
/*void SozdMass(int*A, int*B)//Функция заполняющая массивы 
{
    for (int i = 0; i < N; i++)
        A[i] = rand() % 10;
    for (int i = 0; i < N; i++)
        B[i] = rand() % 10;
}
*/
void Output(int aN, int*A, int*B, int*C) // Функция вывода результатов на экран
{
    printf("\n massiveA \n"); // Форматированный вывод
    for (int i = 0; i < aN; i++)
    {
        printf("%2i", A[i]);
        
    }
    printf("\n");
    
    printf("\n massiveB \n"); // Форматированный вывод
    for (int i = 0; i < aN; i++)
    {
         printf("%2i", B[i]);
         
    }
    printf("\n");
    
    printf("\n massiveC \n"); // Форматированный вывод
    for (int i = 0; i < aN * 2; i++)
    {
        printf("%2i", C[i]);
          
    }
    printf("\n");
}
 
// Дано два масиви: mas1[A] і mas2[B]. Створити третій масив, у який переписати по черзі по два елементи з вхідних масивів; почати з масиву  mas2.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.12.2016, 19:54
Ответы с готовыми решениями:

Все совершённые числа из двух массивов переписать в третий массив и найти четыре наименьших элемента
Человек не может в C++. Заданы массивы целых чисел X(n) и Y(k). Все совершённые числа из этих...

Найти среди элементов массивов a и z два одинаковых элемента с наименьшими индексами
Решил поделать задачки из книги и тут на тебе: Я нашел наименьший одинаковый элемент и его...

Извлекать из очереди элементы, пока значение начального элемента очереди не станет четным
Даны указатели P1 и P2 на начало и конец непустого очереди. Извлекать из очереди элементы, пока...

Просмотр первого элемента очереди, вывод очереди на экран
Доброго времени суток! Не могу разобраться с тем, почему компилятор ругается на функции Peek и...

0
11.12.2016, 19:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.12.2016, 19:54
Помогаю со студенческими работами здесь

Создание очереди и удаление элемента очереди по усмотрению пользователя
Вот код он создает очередь и должен удалить элемент очереди по усмотрению пользователя проблема...

Найдите среди элементов массивов a и z два одинаковых элемента с наименьшими индексами и выведите их значения
Введите одномерные массивы z = {0, 1.6, 6.4, 3.8, -7, 1, -2} и a={5,4,6.4,1}. Найдите среди...

Как обменять два элемента массива местами если эти два элемента это объекты?
как обменять два элемента массива местами если эти два элемента это объекты?

Удалять каждый раз два элемента через два элемента в списке
Вот список: 1 столб - индекс элемента, 2 столб - название элемента Исходный список: 0 0 1...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru