С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Нубарик
4 / 4 / 1
Регистрация: 06.11.2010
Сообщений: 40
#1

Стек(удаление элементов) - C++

13.12.2010, 12:19. Просмотров 586. Ответов 2
Метки нет (Все метки)

Привет, форумчане !
помогите пожалуйста в таком вот задании:
**ввести с клавиатуры 10 элементов и сформировать с них стек. удалить со стека все элементы до первого отрицательного. Одержанный стек вывести на экран.**
всё что у меня вышло так это вывести все элементы и то в обратном порядке, а как удалить до первого отрицательного никак не пойму.
вот что я набросал :
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
35
36
37
38
39
#include <vcl.h>
#include <iostream.h>
#pragma hdrstop
 
using namespace std;
 
 struct TElem
     {
      double inf;
      TElem* link;
     };
 
int main(int argc, char* argv[])
{
    TElem *top = NULL;
    double val;
    for(int i=0;i<10;i++)
    {
      cout << "Enter next symbol: ";
      cin >> val;
      TElem *p = new TElem;
      p->inf = val;
      p->link = top;
      top = p;
    }
cout<<endl;
   while (top != NULL)
     {
      TElem *q;
      val = top->inf;
      q = top;
      top = q->link;
      delete q;
      cout<<val <<" ";
    }
cout<<endl<<endl;
system("PAUSE");
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2010, 12:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Стек(удаление элементов) (C++):

Стек, не во всех случаях работает удаление - C++
Описать класс Lifo, реализовать стек произвольного размера для хранения целых чисел, добавление и извлечение одиночного элемента из стека,...

Организовать заданную структуру данных: точка (x, y) плоскости, стек (добавление, удаление и чтение элемента) - C++
Организовать заданную структуру данных: точка (x, y) плоскости, стек. Определить структуру элемента и написать подпрограммы добавления,...

Создание программы со своей библиотекой ( удаление элементов с N по M в строке и удаление лишних пробелов(если 2 и более оставить один)) - C++
добрый день. помогите, пожалуйста понять мои ошибки в работе. Мне нужно написать программу со своей библиотекой, которая включает в себя...

стек из произвольного кол-ва элементов - C++
2.Составьте программу,которая создает стек из произвольного кол-ва элементов.Инф часть динамического элемента должна состоять из двух...

Ввод элементов в стек из текстового файла - C++
Здравствуйте! Есть такой код: struct node { int info; node*top; }; void main() { node *top,*k;

Функция удаления элементов (список, стек) - C++
Подскажите, имеется функция добавления элементов (список, стек) Нужно на её основе сделать функцию удаления элемента. Что-то...

2
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
13.12.2010, 13:15 #2
Особо в код не вчитывался, возможно в цикле заменить условие на:
C++
1
while (top->inf >= 0)
вытолкнув таким образом все элементы, удовлетворяющие условию (убрав при этом вывод на экран). Ну а потом напечатать оставшуюся часть.
1
Нубарик
4 / 4 / 1
Регистрация: 06.11.2010
Сообщений: 40
13.12.2010, 20:53  [ТС] #3
спасибо, печатает все с конца до отрицательного.
да и в задании конкретно не указано печатать с конца или начала. Стек вить работает за принципом "последним пришёл-первым ушёл"(LIFO, англ. last in, first out). как-то отмажусь =)
0
Миниатюры
Стек(удаление элементов)  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2010, 20:53
Привет! Вот еще темы с ответами:

Структура: стек из произвольного количества элементов - C++
Составьте программу, которая создает стек из произвольного количества элементов. Информационная часть динамического элемента должна...

Используя стек, описать функцию проверяющую, является ли стек пустым - C++
Используя стек, описать функцию проверяющую, является ли стек пустым

Программа добавляет введенный массив 5*5 в стек и выводит полученный стек двумя столбцами - C++
Программа добавляет введенный массив 5*5 в стек и выводит полученный стек двумя столбцами #include &lt;iostream&gt; #include &lt;stdlib.h&gt; ...

Переменные в стеке. Где хранятся? Как обрабатываются? Есть ли программный стек или только стек процессора? - C++
Есть у меня пробелы в познаниях, хотел бы их устранить. 1. Что такое стек в самом языке С++ ? 2. В какой памяти он хранится и почему...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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