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

Уменьшить последовательность - C++

Восстановить пароль Регистрация
 
Nadin
0 / 0 / 0
Регистрация: 08.06.2009
Сообщений: 28
21.01.2010, 13:12     Уменьшить последовательность #1
Дана последовательность из N элементов. Нужно уменьшить её, удалив первый из отрицательных элементов и минимальный из положительных элементов и сдвинуть все остальные к началу.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2010, 13:12     Уменьшить последовательность
Посмотрите здесь:

Преобразовать литерную последовательность в другую литерную последовательность всеми описанными ниже способами C++
Вводится последовательность из N целых чисел. Сформировать последовательность, C++
C++ Вводить последовательность вещественных чисел, пока следующее вводимое число не окажется меньше предыдущего. Вывести полученую последовательность.
Вводится последовательность целых чисел,0 –конец последовательности. Определить, содержит ли последовательность хотя бы три отрицательных четных числа C++
C++ Дана последовательность, элементы которой есть целые двузначные числа. Упорядочить последовательность по убыванию произведений цифр
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sekt
 Аватар для Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
21.01.2010, 13:33     Уменьшить последовательность #2
C++
1
2
3
4
5
6
int mass[10];
for()
{
if(mass[i]<0)
for(j=i+1;j<10;j++)mass[j-1]=mass[j];
}
аналогично с положительным
Андрейка
410 / 214 / 24
Регистрация: 25.03.2009
Сообщений: 716
21.01.2010, 13:53     Уменьшить последовательность #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
#include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
 
template <class ForwardIterator> ForwardIterator min_element_if ( ForwardIterator first, ForwardIterator last )
{
  ForwardIterator lowest = first;
  if (first==last) return last;
  while (++first!=last)
  {
     if (*first > 0)
     if (*first<*lowest)    
      lowest=first;
  }
  return lowest;
}
 
 
int main()
{
    int arr[] = {2,3,-4,1,-5,6,5};
    std::vector <int> _VEC(arr, arr + sizeof(arr) / sizeof(*arr));
 
    _VEC.erase(std::find_if(_VEC.begin(), _VEC.end(), std::bind2nd(std::less <int> (), 0)));
    _VEC.erase(min_element_if(_VEC.begin(), _VEC.end()));
 
    std::ostream_iterator <int> _ITER(std::cout," ");
 
    std::copy(_VEC.begin(), _VEC.end(), _ITER);
 
    return 0;
 
}
Nadin
0 / 0 / 0
Регистрация: 08.06.2009
Сообщений: 28
27.01.2010, 05:03  [ТС]     Уменьшить последовательность #4
а как именно с положительным минимальным элементом?
Yandex
Объявления
27.01.2010, 05:03     Уменьшить последовательность
Ответ Создать тему
Опции темы

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