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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
xEk
0 / 0 / 0
Регистрация: 24.03.2012
Сообщений: 12
#1

Как преобразовать массив создав новый из старого с изменениями?! - C++

06.05.2012, 15:16. Просмотров 440. Ответов 1
Метки нет (Все метки)

Дан массив размера N. Преобразовать его, вставив после каждого положительного числа нулевой элемент.
Код
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
    int n=10,i;
    int a[n];
    int b[n];
    srand(8);
    for(i=0;i<n;i++)
      a[i]=rand()%101-50;
       printf("\n\nARRAY A\n\n");
       for(i=0;i<n;i++)
      printf("%8i",a[i]);
     for(i=0;i<n;i++)
      if (a[i]>=0)
       {
           b[i]=a[i];
           b[i+1]=0;
           i++;
       }
      else
       b[i]=a[i];

    printf("\n\nARRAY B\n\n");
    for(i=0;i<n;i++)
      printf("%8i",b[i]);

      return 0;
}
Вот написал, но нулевой элемент вставляет в ячейку со следующим число, а должен в новую "пустую" ячейку. Подскажите как это сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2012, 15:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как преобразовать массив создав новый из старого с изменениями?! (C++):

Дан двумерный массив. Преобразовать его так, чтобы новый массив содержал элементы старого, циклически сдвинутые на 2 элемента влево. - C++
Уважаемые форумчане, такая проблема, не знаю как решить задачу, в моём городе мне не к кому обратиться с ней, все либо уже забыли либо...

Сформировать новый массив из старого, добавляя дополнительные элементы - C++
Доброго времени суток! Такая вот задача: Программа формирует новый массив из старого добавляя (2 нуля) если в исходном массиве...

Получить новый массив из старого удалив элементы с заданным значением - C++
Вот задача: Программа получения нового массива из старого массива удалением каждый раз числа 5 из старого массива. К примеру в массиве...

Cоставить новый массив из строк старого, в которых есть искомый элемент - C++
Задачка сама по себе легкая, но нужно использовать динамическое выделение памяти и указатели, причем не new, а при помощи всяких malloc'ов....

Создать новый массив, элементами которого являются абсолютная величина каждого числа старого массива - C++
Дан двумерный массив, который содержит не более 10 строк и не более 10 столбцов. Создать новый массив, элементами которого являются...

Как передвигать указатель чтобы выделить память под новый элемент и добавить новый элемент в массив? - C++
Допустим есть некое условие,нам нужно при каждом его выполнении выделить память под новый элемент и добавить его в массив. Вопрос:Как...

1
aspin
2 / 2 / 0
Регистрация: 03.05.2012
Сообщений: 26
06.05.2012, 17:26 #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
int a=-100,b=100,n=10;
    srand(time(0));
    
    int *mas = new int [n];
    
    for (int i=0; i<n;i++)
        mas[i]=a+rand()%(b-a);
    
    for (int i=0; i<n;i++)
        cout<<mas[i]<<" ";
 
    for (int i=0; i<n;i++)
    {
        if (mas[i]>0)
        {
            n++;
            for (int j=n;j>i;j--)
                mas[j]=mas[j-1];
            mas[i+1]=0;
        }
    }
 
    cout<<endl<<"new mas"<<endl;
    for (int i=0; i<n;i++)
        cout<<mas[i]<<" ";
если тоже рандомом будешь числа задавать, не забудь библиотеку подключить
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2012, 17:26
Привет! Вот еще темы с ответами:

Как преобразовать массив в динамический? Массив вычисляет сумму элементов каждой диагонали матрицы - C++
Ошибка : Вызвано исключение по адресу 0x00BB2F4F в Проект6.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFDFDFE05. #...

Запись элементов массива структурного типа.Из старого массива- в новый - C++
Здравствуйте.Возможно, в названии темы не совсем понятно &quot;чего я хочу&quot;, поэтому напишу задание: &quot;1.Сформировать динамический массив...

Как, создав переменную класса string, вывести ее последнюю букву на экран - C++
Если нужно обратиться к определенному символу слова, то можно использовать это: string s = &quot;string&quot;; char ch = s;//contains 's'Но в...

Нужно сохранить по верх старого файла а не создав новый - Delphi
Доброго времени суток друзья. При сохранении таблицы Стринггрид в файл эксель он сохраняется но приэтом создав новый файл эксель. Нужно...


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

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

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