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

Удалить из массива все отрицательные элементы; - C++

Восстановить пароль Регистрация
 
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
05.04.2013, 01:20     Удалить из массива все отрицательные элементы; #1
Удалить из массива
все отрицательные элементы;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.04.2013, 01:20     Удалить из массива все отрицательные элементы;
Посмотрите здесь:

Удалить из массива все отрицательные элементы C++
C++ Удалить все отрицательные элементы массива
C++ Массив: Удалить из массива все отрицательные элементы.
C++ если массив не является знакочередующимся,то удалить из массива все положительные числа,в противном случае-удалить отрицательные элементы.после удален
Удалить из массива все отрицательные элементы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
05.04.2013, 10:57     Удалить из массива все отрицательные элементы; #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
int main()
{
    const int n = 10; int k = 0;
   int a[n] = {0,-4,3,-5,1,3,-7,-3,1,0};
   for (int i=0; i<n; ++i)
    if (a[i]<0)
    {
            for (int j=i; j<n-1; ++j)
                a[j] = a[j+1];
            ++k;
            --i;
        }
    for (int i=0; i<n-k; ++i)
       std::cout<<a[i]<<' ';
   return 0;
}
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
05.04.2013, 12:13     Удалить из массива все отрицательные элементы; #3
BumerangSP, Ваш код зациклится, если последний элемент будет отрицательным. Предлагаю для исключения этого добавить м/у 11 и 12 строками присваивание:
C++
1
a[n-1] = 0;
BumerangSP
05.04.2013, 17:34     Удалить из массива все отрицательные элементы;
  #4

Не по теме:

эх, торопливость моя

Yandex
Объявления
05.04.2013, 17:34     Удалить из массива все отрицательные элементы;
Ответ Создать тему
Опции темы

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