Нужно, написать программу, которая удаляет из списка последний отрицательный элемент,...

0 голосов
37 просмотров

Нужно, написать программу, которая удаляет из списка последний отрицательный элемент, если такой есть. на с++ Помогите пожалуйста.


Информатика (126 баллов) | 37 просмотров
Дан 1 ответ
0 голосов

#include
#include

using namespace std;

int main() {
    listmylist;
    //Делаем со списком, что хотим
    mylist.push_back(1);
    mylist.push_back(2);
    mylist.push_back(3);
    mylist.push_back(-4);
    mylist.push_back(5);
    for (auto i : mylist) {
        cout << i << " ";<br>    }
    cout << "\n";<br>    //Удаляем последний отрицательный элемент
    auto it = mylist.end();
    while (*it > 0) {
        if (it == mylist.begin()) {
            cout << "Not found.\n";<br>            return 0;
        }
        it--;
    }
    //Делаем со списком, что хотим
    mylist.erase(it);
    for (auto i : mylist){
        cout << i << " ";<br>    }
    return 0;
}

(13.3k баллов)
0

Подскажите, пожалуйста. при вводе списка, как его закончить?)

0

Можно написать так:
int n;
while (cin >> n) {
mylist.push_back(n);
}

0

и чтобы закончить ввод, нужно ввести Ctrl + Z

0

это будет означать конец входных данных