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

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

Войти
Регистрация
Восстановить пароль
 
greendoom
4 / 4 / 1
Регистрация: 13.03.2011
Сообщений: 56
#1

Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю. - C++

02.11.2011, 17:22. Просмотров 830. Ответов 3
Метки нет (Все метки)

Задан целочисленный одномерный массив a из n элементов.
Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.11.2011, 17:22     Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю.
Посмотрите здесь:

Найти минимальное значение положительных элементов массива, расположенных до первого элемента, равного нулю - C++
Найти минимальное значение положительных элементов, расположенных до первого элемента, равного нулю. c++

Найти произведение элементов, расположенных правее первого элемента равного первого элемента равного k - C++
Дан вектор размерности N. Найти произведение элементов, расположенных правее первого элемента равного первого элемента равного k.

Найти сумму модулей элементов массива, расположенных после первого элемента, равного нулю - C++
Народ нужна помощь помогите с програмой не могу завтро зачет не могу ее написать) Вот задача:В одномерном массиве, состоящем из n целых...

Найти сумму модулей элементов массива, расположенных после первого элемента, равного нулю - C++
Все парные элементы заменить их квадраты, а не парные умножить на 2. Найти сумму модулей элементов массива, расположенных после...

Вычислить сумму модулей элементов массива, расположенных после первого элемента, равного нулю - C++
Дан вещественный массив а(n).Вычислить сумму модулей элементов массива,расположенных после первого элемента,равного нулю. Если таких...

Найти сумму элементов массива, расположенных после последнего элемента, равного нулю - C++
Всем, привет)вобщем задачка такая,очень нужна помощь!!!!) помогите,кто сможет! В двумерном массиве,состоящем из m и n элементов...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
02.11.2011, 17:44     Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю. #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
26
27
28
29
30
31
#include <iostream>
#include <vector>
#include <algorithm>
 
typedef std::vector<int> vecInt;
typedef vecInt::iterator vecIntItr;
 
bool isPositive(int i)
{
    return ((i > 0) ? true : false);
}
 
int main()
{
    vecInt v;
    int buf;
    while(std::cin >> buf)
        v.push_back(buf);
 
    vecIntItr minPositive = find_if((find(v.begin(), v.end(), 0)), v.end(), isPositive); 
 
    if(minPositive == v.end())
    {
        std::cout << "no zero in array or no positive element after zero" << std::endl;
        return 0;
    }
    else
        std::cout << *minPositive << std::endl;
 
    return 0;
}
Сыроежка
Заблокирован
02.11.2011, 18:58     Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю. #3
Цитата Сообщение от greendoom Посмотреть сообщение
Задан целочисленный одномерный массив a из n элементов.
Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю.
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
#include   <algorithm>
#include   <functional>
#include   <iostream>
 
 
const size_t n = 10;
 
int main()
{
   int a[n];
   int *min = a + n;
 
   //  звполняете каким-нибудь образом массив. Можно его инициализировать при его объявлении
 
   
   int *zero = std::find( a, a + n, 0 );
 
 
   if ( zero != a + n )
   {
       ++zero;
       min = std::min_element( zero, a + n, std::bind2nd( std::greater<int>(), 0 ) );
   }
 
   if ( min != a + n ) std::cout << "Minimum element = " << *min << std::endl;
   else std::cout << "Minimum of positive elements is not found\n";
 
   return ( 0 );
}
Добавлено через 1 минуту
Цитата Сообщение от soon Посмотреть сообщение
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
#include <iostream>
#include <vector>
#include <algorithm>
 
typedef std::vector<int> vecInt;
typedef vecInt::iterator vecIntItr;
 
bool isPositive(int i)
{
    return ((i > 0) ? true : false);
}
 
int main()
{
    vecInt v;
    int buf;
    while(std::cin >> buf)
        v.push_back(buf);
 
    vecIntItr minPositive = find_if((find(v.begin(), v.end(), 0)), v.end(), isPositive); 
 
    if(minPositive == v.end())
    {
        std::cout << "no zero in array or no positive element after zero" << std::endl;
        return 0;
    }
    else
        std::cout << *minPositive << std::endl;
 
    return 0;
}
Ваша программа делает не то, что требуется. Она пытается найти первый положительный элемент после первого найденного 0 в векторе.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.11.2011, 19:04     Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю.
Еще ссылки по теме:

В одномерном массиве, состоящем из 30 целых элементов, вычислить сумму элементов массива, расположенных после последнего элемента, равного нулю. - C++
Помогите,пожалуйста,решить.. В одномерном массиве, состоящем из 30 целых элементов, вычислить сумму элементов массива, расположенных...

Вычислить сумму модулей элементов , расположенных после первого элемента ,равному нулю - C++
Добрый вечер уважаемые форумчане !Нужна ваша помощь! В одномерном массиве состоявшим из n целочисленных элементов вычислить: ...

Найти сумму элементов, расположенных правее последнего отрицательного элемента - C++
программа, которая для вещественного массива из 20 элементов определяет сумму его элементов, расположенных правее последнего отрицательного...

Найти значение максимального элемента среди парных по значению элементов, расположенных до первого непарного - C++
2)Есть одномерный массив целых чисел размером N.Найти значение максимального элемента среди парных(по значению) элементов, расположенных до...

Найти номер первого максимального элемента среди отрицательных элементов, расположенных до первого элемента, большего заданного числа Т - C++
Написать собственную функцию для работы с одномерным динамическим массивом, заданным указателем. Алгоритмы решения всех подзадач, включая...

Найти номер первого максимального элемента среди отрицательных элементов, расположенных до первого элемента, большего Т. - C++
Задан целочисленный одномерный массив a из n элементов. Найти номер первого максимального элемента среди отрицательных элементов,...


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

Или воспользуйтесь поиском по форуму:
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
02.11.2011, 19:04     Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю. #4
Действительно. Про минимальный то я и позабыл
Yandex
Объявления
02.11.2011, 19:04     Найти минимальное значение положительных элементов, расположенных правее первого элемента, равного нулю.
Ответ Создать тему
Опции темы

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