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

Найти произведение элементов стека и поместить результат в стек

10.02.2016, 12:07. Просмотров 2847. Ответов 4
Метки нет (Все метки)

Сформировать стек из 5 чисел. Найти произведение 3-го и 4-го чисел из стека. Результат поместить в стек.
если можно хотелось бы с комментариями, хочется все таки разобраться
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.02.2016, 12:07
Ответы с готовыми решениями:

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

В стек Stek2 поместить все отрицательные элементы стека Stek1 и найти их произведение
Помогите написать программу. Описать структуры данных, процедуры и функции, необходимые для работы...

Поместить каждый 3 элемент стека в новый стек
Создать новый стек, в который поместить каждый третий элемент первого стека.

Структура стек (: добавить элемент в стек, удалить элемент из стека, получить значение с вершины стека, размер стека...)
Всем привет,ребят помогите пожалуйста с лабой,вообще без понятия про стеки:( Может кто то...

4
104 / 104 / 99
Регистрация: 30.06.2015
Сообщений: 272
10.02.2016, 12:51 2
Лучший ответ Сообщение было отмечено Lovinstar как решение

Решение

Lovinstar,
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
#include <iostream>
#include <stack>
#include <windows.h>
#include <time.h>
using namespace std;
#define M 3
 
int main()
{
    srand(time(NULL));
    stack<int> stk; // стек целых чисел (int)
    int a,b;
    int size = 5; // количество чисел в стеке
    for(int i=0;i<size;i++)  
        stk.push(rand()%10+1); // забиваем стек случайными числами от 1 до 10 
    size = 0; // теперь это счетчик :)
    while(!stk.empty()) //цикл, пока стек не пуст!
    {
        if(size==3)
            a = stk.top(); // запись 3го числа из стека
        if(size==4) 
            b = stk.top(); // запись 4го числа из стека
        stk.pop(); // снимаем со стека верхнее число (стек--)
        size++;
    }
    stk.push(a*b); // кладем на стек произведения 3-го и 4-го числа.
    cout << stk.top() << endl; // вывод произведения 3-го и 4-го числа на экран
    return 0;
}
1
0 / 0 / 0
Регистрация: 05.02.2016
Сообщений: 8
17.02.2016, 11:24  [ТС] 3
Спасибо)
0
0 / 0 / 0
Регистрация: 05.02.2016
Сообщений: 8
04.03.2016, 11:25  [ТС] 4
не приняли работу попросили оформить через функцию, и попросили что бы все числа стека выводились на экрана а не только ответ
0
Любитель чаепитий
3509 / 1623 / 504
Регистрация: 24.08.2014
Сообщений: 5,545
Записей в блоге: 1
04.03.2016, 12:58 5
ThePlague, Зачем так изголяться?
Lovinstar,
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
#include <iostream>
#include <stack>
 
const int size = 5;
 
void print(std::stack<int> s)
{
    for(int i = size; i > 0; --i)
    {
        std::cout << ' ' << i << ": " << s.top() << std::endl;
        s.pop();
    }
}
 
void calculation(std::stack<int>& s)
{
    std::stack<int> cpy(s);
    cpy.pop();
    int a = cpy.top();
    cpy.pop();
    int b = cpy.top();
    s.push(a*b);
}
 
int main()
{
    std::stack<int> st;
    st.push(1);
    st.push(2);
    st.push(3);
    st.push(4);
    st.push(5);
    std::cout << "beg:\n";
    print(st);
    calculation(st);
    std::cout << "res:\n";
    print(st);
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.03.2016, 12:58

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

В новый стек поместить элементы, лежащие во второй половине первого стека
Создать стек с числами в диапазоне от –50 до +50. После создания стека выполнить индивидуальное...

Если x равен вершине «стека», то удалить из «очереди» элемент и поместить его в «стек»
Пожалуйста, помогите решить задачу, написав ее на C#!!! Если x равен вершине «стека», то удалить из...

Создать новый стек, в который поместить каждый третий элемент первого стека
Помогите, пожалуйста реализовать следующее: создать стек с числами в диапазоне от –50 до +50. После...

Задача со стеками. В первый стек поместить четные числа в порядке неубывания, во второй стек поместить нечетные
Даны четыре стека.Два первых стека пустые,а в двух других находятся натуральные числа.В первый...


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

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

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