Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 16.11.2014
Сообщений: 31
1

Создать стек, для суммирования чисел

28.12.2015, 19:12. Просмотров 481. Ответов 1
Метки нет (Все метки)

Столкнулся с заданием в котором нужно создать стек при этом необходимо реализовать разбор строки для суммирования чисел. Они представляются так: (2+3)*10 -------> 23+10. Разбор строки реализовывается так: числа заталкиваются в стек , пока не встретится знак операции, потом со стека выталкиваются 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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include "stdafx.h"
#include <deque>
#include <string>
#include <stdexcept>
#include "conio.h"
 
 
template <typename T, typename C = std::deque<T> >
class stack
{
    C c;
public:
    void    pop();
    void    push(T const&);
    T       top() const;
    size_t  size() const;
    void    clear();
 
};
 
 
 
template <typename T, typename C>
inline void stack<T, C>::push(T const& rhs)
{
    c.push_back(rhs);
}
 
 
 
template <typename T, typename C>
inline void stack<T, C>::pop()
{
    if (!c.size()) throw (std::underflow_error("}I{0na"));
    c.pop_back();
}
 
 
 
template <typename T, typename C>
inline T stack<T, C>::top() const
{
    return c.back();
}
 
 
template <typename T, typename C>
inline size_t stack<T, C>::size() const
{
    return c.size();
}
 
 
template <typename T, typename C>
inline void stack<T, C>::clear()
{
    c.clear();
}
 
 
 
 
int main()
{
    using namespace std;
    
 
    stack<string> stk;
    stk.clear();
    stk.push("lkhjkh");
    stk.push("oiouio");
    stk.pop();
    stk.size();
    stk.top();
    stk.clear();
    _getch();
    return 0;
}
Но как пихать в него те самые числа (разбирая строки) не знаю.Пытался так, (но это совсем не то):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
template <typename T = int>
        void push(stack<T>& stk)
{
    T tmp;
    std::cin >> tmp;
    stk.push(tmp);
}
 
 
 
int main() {
    using namespace std;
 
 
    stack<int> stk;
 
    push(stk);
 
    return 0;
}
И как их суммировать когда встретится знак - тоже не знаю. Help
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.12.2015, 19:12
Ответы с готовыми решениями:

Структура for для суммирования всех четных чисел от 2 до 100
Почему результаты данного кода в VS 2010 и DEV-C++ после компиляции разные ? #include &lt;cstdlib&gt;...

Создать форму для суммирования двух чисел
Здравствуйте! Помогите создать проект для суммирования двух чисел, вводимых с клавиатуры. Вот так...

Создать стек из случайных целых чисел. Развернуть стек, т.е. «дно» стека сделать вершиной, а вершину – «дном»
Создать стек из случайных целых чисел. Развернуть стек, т.е. «дно» стека сделать вершиной, а...

Создать формулу для суммирования значений ячеек
Как в Excel задать ячейку формулой? например что бы при заполнении в других ячейках цифрами в этой...

1
Новичок
28.12.2015, 19:29     Создать стек, для суммирования чисел
  #2

Не по теме:

Цитата Сообщение от drummer1 Посмотреть сообщение
if (!c.size()) throw (std::underflow_error("}I{0na"));
:D :rofl:

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2015, 19:29
Привет! Вот еще темы с ответами:

Составить программу для суммирования простых чисел из промежутка [m; n]
Составить программу для суммирования простых чисел из промежутка . Использовать функцию,...

Напишите функцию для суммирования произвольного количества чисел php
Здраствуйте, подскажите как сделат? Не выходит у меня):-| Напишите функцию для суммирования...

Реализовать приложение, в котором рекурсивная функция используется для суммирования целых чисел от 1 до N
помогите найти ошибку что то не так с переменными, не пойму что procedure...

Сформировать стек из N чисел. Найти сумму нечетных чисел из стека. Результат поместить в стек
Здравствуйте. Помогите, пожалуйста, решить задачу: Сформировать стек из N чисел. Найти сумму ...


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

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

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