Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Программа должна создать два статических массива с 
:(
    Опции темы
Bossx
Дата 19.5.2017, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 19.5.2017

Репутация: нет
Всего: нет



Кто знает, как правильно поправить код на С++? Программа должна создать два статических массива со случайными
элементами из диапазона [5;20], по 10 элементов в каждом массиве, вывести
каждый массив на экран на отдельной строке. Затем программа должна создать
динамический массив нужного размера и скопировать в него все общие
элементы из первых двух массивов(без повторений). Вывести получившийся
динамический массив на экран на отдельной строке.

Пример работы программы:
12 7 16 19 9 16 11 13 8 5
6 10 10 16 13 7 17 13 18 14
7 16 13

HTML
#include <iostream>
#include <conio.h>

using namespace std;

int *f8(int *a, int *b, int m, int n, int *sizetotal)
{
    bool flag;
    int newsize = 0;
    for (int i = 0; i < m; ++i)
    {
        flag = true;
        for (int j = 0; j < n; ++j)
        {
            if (flag == true && a[i] == b[j])
            {
                flag = false;
                ++newsize;
                break;
            }
        }
    }
    *sizetotal = newsize;
    int* arr = new int[*sizetotal]{};
    int k = 0;
    for (int i = 0; i < m; ++i)
    {
        flag = true;
        for (int j = 0; j < n; ++j)
        {
            if (flag == true && a[i] == b[j])
            {
                arr[k] = b[j];
                ++k;
                flag = false;
                break;
            }
 
        }
 
    }
    return arr;
}
void InitArray(int *a, int size, int min, int max)
{
    for (int i = 0; i < size; ++i)
    {
        a[i] = rand() % (max - min + 1) + min;
    }
}
cout << "Enter size of first array:" << endl;
    cin 
>> N;
    arrd = new int[N];
    InitArray(arrd, N, 5, 20);
    ShowArray(arrd, N);
    cout << "Enter size of second array:" << endl;
    cin 
>> M;
    arrd2 = new int[M];
    InitArray(arrd2, M, -10, 10);
    ShowArray(arrd2, M);
    int *sizetotal = &N;
    ares = f8(arrd, arrd2, N, M, sizetotal);
    ShowArray(ares, *sizetotal);
    delete[]arrd;
    arrd = nullptr;
    delete[]arrd2;
    arrd2 = nullptr;
    delete[]ares;
    ares = nullptr;
    getch();
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0925 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.