Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
кэп
0 / 0 / 1
Регистрация: 16.10.2014
Сообщений: 7
#1

Вставить элемент в динамический массив - C++

10.12.2014, 20:03. Просмотров 319. Ответов 1
Метки нет (Все метки)

Дан одномерный массив целых чисел, заполненный случайным образом числами из промежутка [-a;b]. Вставить элемент
http://www.cyberforum.ru/cpp-beginners/thread1922771.html
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
#include <iostream>          // ввод/вывод
#include <vector>           // вектор - массив такой, STL
#include <ctime>             // работа со временем,за счёт неё псевдорандомм генерируется
#include <algorithm>         // библиотека где алгоритм сортировки
 
 
 
int main()
{
    std::vector<int> mas, newmas; // задаём масивы типа инт
    const int n = 100;            // скока элементов
    int k, z;                   // K какой чилос вставляем, Z после которого вставляем K
    srand(time(NULL));              // псевдорандом
    std::cout << "Vvedite K" << std::endl;   
    std::cin >> k;         
    std::cout << "Vvedite Z" << std::endl;
    std::cin >> z;
    for (size_t i = 0; i < n; i++)              
        mas.push_back(rand() % 201 - 100);       // заполняем первый массив n элементами       
    std::sort(mas.begin(), mas.end());           // сортируем
    std::vector<int>::iterator iter;             // объявление итератора, через него обращаемся к элементам вектора
    for (iter = mas.begin(); iter != mas.end(); iter++)     // цикл, с первого по последний
        std::cout << *iter << " ";                          // выводим
    std::cout << std::endl;
    for (iter = mas.begin(); iter != mas.end(); iter++)          
    {
        newmas.push_back(*iter);                      // вставляем во второй новый массив элементы из певрого
        if (abs(*iter) % 10 == z)                     // остаток от деления(последняя цифра в числе) если да то вставляем K
            newmas.push_back(k);
    }
    std::cout << "New mas" << std::endl;
    for (iter = newmas.begin(); iter != newmas.end(); iter++)
        std::cout << *iter << " ";
    std::cout << std::endl;
    system("pause");
    return 0;
}
как сделать через динамический массив?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2014, 20:03
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Вставить элемент в динамический массив (C++):

Как вставить элемент в динамический массив?
Подскажите, как нормально реализовать функцию для вставки элемента в...

Динамический массив строк (вставить строку с номером к)
Написал программу,задача была сформировать динамический массив и вставить...

Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить перед всеми строками, первый элемент которых делится на3,вставить....
Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить...

Массив: передать динамический массив в функцию и записать в каждый элемент строку из файла
задача: передать динамический массив в функцию, и записать в каждый элемент...

Новый элемент в динамический массив
Здравствуйте! Меня интересует один вопрос: можно ли в динамический массив...

1
ramazan05duldug
39 / 39 / 20
Регистрация: 23.04.2012
Сообщений: 462
Записей в блоге: 2
10.12.2014, 20:19 #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
#include <iostream> // ввод/вывод
#include <vector> // вектор - массив такой, STL
#include <ctime> // работа со временем,за счёт неё псевдорандомм генерируется
#include <algorithm> // библиотека где алгоритм сортировки
 
 
 
int main()
{
std::vector<int> mas, newmas; // задаём масивы типа инт
const int n = 100; // скока элементов
int k, z; // K какой чилос вставляем, Z после которого вставляем K
srand(time(NULL)); // псевдорандом
std::cout << "Vvedite K" << std::endl;
std::cin >> k;
std::cout << "Vvedite Z" << std::endl;
std::cin >> z;
for (size_t i = 0; i < n; i++)
mas.push_back(rand() % 201 - 100); // заполняем первый массив n элементами
std::sort(mas.begin(), mas.end()); // сортируем
std::vector<int>::iterator iter; // объявление итератора, через него обращаемся к элементам вектора
for (iter = mas.begin(); iter != mas.end(); iter++) // цикл, с первого по последний
std::cout << *iter << " "; // выводим
std::cout << std::endl;
for (iter = mas.begin(); iter != mas.end(); iter++)
{
newmas.push_back(*iter); // вставляем во второй новый массив элементы из певрого
if (abs(*iter) % 10 == z) // остаток от деления(последняя цифра в числе) если да то вставляем K
newmas.push_back(k);
}
std::cout << "New mas" << std::endl;
for (iter = newmas.begin(); iter != newmas.end(); iter++)
std::cout << *iter << " ";
std::cout << std::endl;
system("pause");
return 0;
}
Так будет по понятливее)

Добавлено через 2 минуты
C++
1
int *mas = new int[n];
Вы прочитали бы, про динамические массивы)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2014, 20:19
Привет! Вот еще темы с решениями:

Массив: Не знаю, как упорядоченно вставить элемент в массив...
Есть массив a={5,4,2,1} и массив b Нужно вставить число r=3 в b, и все...

Как добавить элемент в динамический массив?
Всем привет. У меня такая проблема: Написал класс avto, в нем данные об...

Вставить в массив элемент
Вставить в массив число 10 после m-го элемента

Как добавить элемент с заданным номером в динамический массив?
Добавить элемент с заданным номером в динамический массив. Как это сделать?


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

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

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