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

стек в STL - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Максимальный элемент массива http://www.cyberforum.ru/cpp-beginners/thread301610.html
вот моя программа: #include<stdio.h> #include<stdlib.h> #include<time.h> #include<iostream> int main(){ int mass,max; max=mass; for(int i=0;i<100;i++){
C++ Создать класс Triangle для представления треугольника. Поля данных должны включать углы и стороны. Создать класс Triangle для представления треугольника. Поля данных должны включать углы и стороны. Требуется реализовать операции: получения и изменения полей данных, вычисления площади, вычисление... http://www.cyberforum.ru/cpp-beginners/thread301604.html
C++ организовать цикл
дано слово ch="sdf" Как сделать, чтобы ch просматривался целым словом, а не посимвольно. for(i=0;i<=3;i++){ if (!strcmp(ch,argv))) {cout<<"0";} }
Как создавать dll? C++
как создавать dll по типу //инклуды #ifdef __cplusplus extern "C" { #endif // константы
C++ Диф уравнения второго порядка http://www.cyberforum.ru/cpp-beginners/thread301585.html
Всем доброго здоровья. проблема в том что не могу освоить численное решение диф. уравнений второго порядка, из за того что не знаю численные методы решения систем уравнений, решение протых уравнений...
C++ Функции C++ turbo Даны 2 одномерных массива,в каждом массиве надо найти количество элементов,кратных 5. Подскажите пожалуйста функцию нахождения кол-ва элементов,кратных 5. Треугольник задан координатами... подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
22.05.2011, 18:02
Можно и попроще сделать (со стандартным стеком):
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
79
80
81
82
83
84
85
86
87
#include <iostream>
#include <numeric>
#include <functional>
#include <cstdlib>
#include <iterator>
#include <algorithm>
 
#include <stack>
 
template <class T, class binop>
T product(std::stack<T> stack, T accum,
      binop op)
{
    while(!stack.empty())
    {
    accum = op(stack.top(), accum);
    stack.pop();
    }
 
    return accum;
}
 
template <class T>
T product(std::stack<T> stack, T accum)
{
    return product(stack, accum, std::multiplies<int>());
}
 
int main()
{
    std::stack<int> stack;
    
    while(true)
    {
    std::cout << "Выберите действие:" << std::endl
          << "\t1. Добавить множитель" << std::endl
          << "\t2. Удалить множитель" << std::endl
          << "\t3. Выполнить умножение" << std::endl
          << "\t4. Выход" << std::endl << std::endl;
 
    int inum;
    int val;
    
    std::cin >> inum;
 
    switch(inum)
    {
    case 1:
        std::cout << "Введите множитель: ";
        std::cin >> val;
        stack.push(val);
        std::cout << "Добавлен множитель: " << val << std::endl;
        continue;
 
    case 2:
        if(stack.empty())
        std::cerr << "Стек пуст" << std::endl;
        else
        {
        std::cout << "Удален множитель: " << stack.top() << std::endl;
        stack.pop();
        }
        
        continue;
 
    case 3:
        if(stack.empty())
        std::cerr << "Стек пуст" << std::endl;
        else
        std::cout << "Произведение равно: "
              << product(stack, 1)
              << std::endl;
        continue;
 
    case 4:
        break;
 
    default:
        std::cerr << "Неизвестная операция: " << inum << std::endl;
        continue;
    }
 
    break;
    }
    
    return 0;
}
Печать стека, надеюсь, сделаешь сам
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru