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

Найти значение последнего отрицательного элемента - C++

Восстановить пароль Регистрация
 
Pl@gue
0 / 0 / 0
Регистрация: 23.01.2012
Сообщений: 15
18.05.2012, 19:45     Найти значение последнего отрицательного элемента #1
Дана последовательность из n вещественных чисел. Найти значение последнего отрицательного элемента.
Массив от -5 до 4, уже дан,при выполнении программы с клавы вводить не надо.
Помогите,очень надо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2012, 19:45     Найти значение последнего отрицательного элемента
Посмотрите здесь:

C++ Нахождение последнего отрицательного элемента массива
C++ В одномерном массиве найти сумму целых частей елементов, расположенных после последнего отрицательного элемента
Найти номер последнего отрицательного элемента массива C++
Найти сумму элементов, расположенных правее последнего отрицательного элемента C++
Вычислить сумму целых частей элементов массива, расположенных после последнего отрицательного элемента C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,416
18.05.2012, 20:31     Найти значение последнего отрицательного элемента #2
нужно рассматривать массив от конца к началу и всё.
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
 
int main()
{
    int arr[10] = {-5, -4, -3, -2, -1, 0, 1, 2, 3, 4};
    for(int i = 9; i >=0; i--)
       if(arr[i] < 0) {std::cout<< arr[i]; break; }  
    return 0;
}
Арсенал
144 / 66 / 6
Регистрация: 30.12.2011
Сообщений: 137
18.05.2012, 21:10     Найти значение последнего отрицательного элемента #3
MrGluck

А если в произвольном месте будет?

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
#include <iostream>
#include <stack>
 
using namespace std;
 
int main ()
{
    cout.flush();
    stack<float> fStck;
    float arr[] = {1.2, -5, -3.5, 3.2, 3.8, -4.2, 0.7, -2.86, 1.25};
    int size = sizeof (arr) / sizeof(float);
 
    for (int i = 0; i < size; i++)
        if (arr[i] < 0.0)
        {
            fStck.push(arr[i]);
            cout << arr[i] << "   ";
        }
    cout << "\nLast element:\n" << endl;
    cout << fStck.top() << endl;
 
 
    return 0;
}
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,416
18.05.2012, 21:50     Найти значение последнего отрицательного элемента #4
Цитата Сообщение от Арсенал Посмотреть сообщение
MrGluck

А если в произвольном месте будет?
Ну и что? Обойдет массив и найдет последний (то бишь первый с конца)

P.S. рано ему еще стек давать, лаба на уровне Hello world
Pl@gue
0 / 0 / 0
Регистрация: 23.01.2012
Сообщений: 15
19.05.2012, 08:16  [ТС]     Найти значение последнего отрицательного элемента #5
Цитата Сообщение от MrGluck Посмотреть сообщение
Ну и что? Обойдет массив и найдет последний (то бишь первый с конца)

P.S. рано ему еще стек давать, лаба на уровне Hello world
ага Hello World мы недавно проходили)))))

Добавлено через 2 минуты
а что обозначает Стак ???
Арсенал
144 / 66 / 6
Регистрация: 30.12.2011
Сообщений: 137
19.05.2012, 11:42     Найти значение последнего отрицательного элемента #6
Цитата Сообщение от Pl@gue Посмотреть сообщение
а что обозначает Стак ???
Структура данных с такой очередью: Последний пришел - первый ушел.
Yandex
Объявления
19.05.2012, 11:42     Найти значение последнего отрицательного элемента
Ответ Создать тему
Опции темы

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