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

Добавить k элементов в начало массива - C++

Восстановить пароль Регистрация
 
Saym
 Аватар для Saym
4 / 4 / 3
Регистрация: 02.11.2014
Сообщений: 169
20.11.2014, 06:13     Добавить k элементов в начало массива #1
Добавление K элементов в начало массива. Массив статический. Создаю первый массив, создаю второй массив. Но не знаю, как объединить эти два массива в один - так, чтобы второй был перед первым. Третий массив создать? Или как-то возможно просто вывести на экран в одной строке, чтобы второй массив был перед первым? Сложненькие операторы использовать как-то нежелательно - не проходили их еще.
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
#pragma argsused
#include <iostream.h.>
#include <math.h.>
#include <conio.h.>
#include <stdlib.h.>
 
int a[100],b[100][200],n,k,i,j,z;
 
 
int main()
{
cin>>n;//Размер первого массива
 
 
for (i=0;i<n;i++) {
 a[i]=rand()%100-50;
 cout<<a[i]<<" ";
}                                 //Создание массива 1
 
cin>>k;    //Размер 2-го массива
 
 
for (j=0;j<k;j++) {
 b[j]=rand()%100-50;
 cout<<b[j]<<" ";          //Создание массива 2
}
 
z=n+k; //Размер 3-го массива
 
 
 
cout<<endl;
getch();
 
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2014, 06:13     Добавить k элементов в начало массива
Посмотрите здесь:

Работа со списком...Не могу добавить функцию добавить элементы в начало списка... C++
C++ добавление К элементов в начало массива
C++ Дан одномерный массив А, состоящий из N элементов. Перенести в начало массива все четные элементы, а в конец массива - все нечетные
Дан одномерный массив А, состоящий из N элементов. Перенести в начало массива все четные элементы, а в конец массива - все нечетные C++
C++ Си массивы (добавить К элементов в начало массива)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ssi
5 / 5 / 3
Регистрация: 24.01.2010
Сообщений: 52
20.11.2014, 07:08     Добавить k элементов в начало массива #2
Цитата Сообщение от Saym Посмотреть сообщение
Третий массив создать? Или как-то возможно просто вывести на экран в одной строке, чтобы второй массив был перед первым?
А задача как стоит? Самое простое - это создать третий массив
Saym
 Аватар для Saym
4 / 4 / 3
Регистрация: 02.11.2014
Сообщений: 169
20.11.2014, 07:14  [ТС]     Добавить k элементов в начало массива #3
Задача - добавить k элементов в начало массива.
Как решить - не принципиально.
Просто я не могу догнать - как третий массив заполнить элементами двух массивов. И чтобы еще элементы второго массива шли сначала.
ssi
5 / 5 / 3
Регистрация: 24.01.2010
Сообщений: 52
20.11.2014, 07:26     Добавить k элементов в начало массива #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Saym Посмотреть сообщение
как третий массив заполнить элементами двух массивов. И чтобы еще элементы второго массива шли сначала.
C++
1
2
3
4
5
6
7
8
9
for (int i = 0; i < k; i++) // пробегаем по второму массиву
{
c[i] = b[i]; // и пихаем его в начало третьего
}
 
for (int i = k; i < z; i++) //потом бежим дальше от k(т.е. от конца второго массива) до k+n(в вашем случае z)
{
c[i] = a[i - k];
}
Saym
 Аватар для Saym
4 / 4 / 3
Регистрация: 02.11.2014
Сообщений: 169
20.11.2014, 07:39  [ТС]     Добавить k элементов в начало массива #5
Спасибо, разобрался, наконец!

Добавлено через 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
#pragma argsused
#include <iostream.h.>
#include <math.h.>
#include <conio.h.>
#include <stdlib.h.>
 
int a[100],b[100],c[200],n,k,i,z;
 
 
int main()
{
cin>>n;//Размер 1-го массива
 
 
for (i=0;i<n;i++) {
a[i]=rand()%100-50;
cout<<a[i]<<" ";
}                                 //Формирование массива 1
 
cin>>k;    //Размер 2-го массива
 
cout<<endl;
 
for (i=0;i<k;i++) {
b[i]=rand()%100-50;
cout<<b[i]<<" ";          //Формирование массива 2
}
 
cout<<endl;
 
for(i=0;i<n;i++) {
c[i]=b[i];
cout<<c[i]<<" ";   //Записали второй массив в начало
  }
 
 
 
z=n+k;
for(i=k;i<z;i++) {
 c[i]=a[i-k];
cout<<c[i]<<" ";   //Записали первый массив во вторую часть(в конец)
  }
cout<<endl;
getch();
 
}
Yandex
Объявления
20.11.2014, 07:39     Добавить k элементов в начало массива
Ответ Создать тему
Опции темы

Текущее время: 15:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru