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

Вставка нового элемента в массив - C++

Восстановить пароль Регистрация
 
СовсемНеКодер
0 / 0 / 0
Регистрация: 21.12.2015
Сообщений: 3
21.12.2015, 19:49     Вставка нового элемента в массив #1
В одномерном массиве, элементы которого - целые числа, произвести следующие
действия:Вставить новый элемент после всех элементов, кратных своему номеру.(Суть в том, что надо сделать без использования нового массива. То есть при деление значения будут смещаться вправо, относительно номера массива.)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Квэрти
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 24
22.12.2015, 20:21     Вставка нового элемента в массив #2
Алгоритм простой. Выделяем память под массив с запасом (2n). Заполняем его. Начинаем поиск элементов с конца массива. Если элемент кратен своему номеру (пусть это будет k), с номера n начинаем приравнивать все предыдущие элементы до k. Затем k равно какому то новому элементу. Продолжаем поиск пока не дойдем по нулевого элемента.
СовсемНеКодер
0 / 0 / 0
Регистрация: 21.12.2015
Сообщений: 3
22.12.2015, 22:45  [ТС]     Вставка нового элемента в массив #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
#include <iostream> 
using namespace std; 
int main() 
{ 
setlocale(0,""); 
int n,m=0; cout<<"n="; cin>>n; 
int *a=new int[2*n]; 
for (int i=0;i<n; ++i) 
{ 
cout<<"a["<<i<<"]="; 
cin>>a[i]; 
} 
cout<<"a[0]="<<a[0]<<endl;
for (int i=1;i<n;) 
{if (a[i]%i==0)
{m++;
cout<<"a["<<i<<"]="<<a[i]<<endl;
for(int k=n;k>i;--i)
a[k+m]=a[k+m-1];
cout<<"a["<<i+1<<"]=";cin>>a[i+1];
i=i+2;}
else {cout<<"a["<<i<<"]="<<a[i]<<endl;
i++;}}
delete [] a; 
system("pause"); 
return 0;}
Вроде бы правильно делаю, но что-то с циклом замены напутал.Помогите пжл.
Ilot
Модератор
Эксперт С++
1765 / 1140 / 221
Регистрация: 16.05.2013
Сообщений: 3,017
Записей в блоге: 5
Завершенные тесты: 1
23.12.2015, 07:38     Вставка нового элемента в массив #4
У меня одного сложилось впечатление, что если код без отступов то он не написан форумитом, а нагло сперт откуда-то и выдан как собственный результат?
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5547 / 2561 / 233
Регистрация: 01.11.2011
Сообщений: 6,330
Завершенные тесты: 1
23.12.2015, 15:11     Вставка нового элемента в массив #5
Как добавить элемент с заданным номером в динамический массив?
Yandex
Объявления
23.12.2015, 15:11     Вставка нового элемента в массив
Ответ Создать тему
Опции темы

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