
C++ НУЖНА ПОМОЩЬ Заполните рандомными n числами стек и найдите сумму элементов в этом стеке.


Ответы на вопрос

Ответ:
#include "stdafx.h"
#include <iostream>
#include <stack>
#include <random>
using namespace std;
int main()
{
random_device r;
mt19937 gen(r());
uniform_int_distribution<> dist(-10, 0);
stack<int> st;
const int n = 20;
int j = 0, sum = 0;
cout << "Stack:\n";
for (int i = 0; i < n; i++) {
int c = dist(gen);
cout << c << "\n";
st.push(c);
}
while (!st.empty()) {
int c = st.top();
st.pop();
j++;
if (j == 4) { sum += c; j = 0; }
}
st.push(sum);
cout << "Sum = " << st.top() << "\n";
}
0



Для выполнения этой задачи вам потребуется использовать библиотеки C++ для работы со стеками и генерации случайных чисел. Вот пример того, как это можно сделать:
cpp#include <iostream>
#include <stack>
#include <ctime> // Для инициализации генератора случайных чисел
#include <cstdlib> // Для функций работы со случайными числами
int main() {
std::srand(std::time(nullptr)); // Инициализация генератора случайных чисел
int n; // Количество чисел, которые нужно добавить в стек
std::cout << "Введите количество чисел: ";
std::cin >> n;
std::stack<int> myStack;
// Заполняем стек случайными числами и считаем их сумму
int sum = 0;
for (int i = 0; i < n; i++) {
int randomNumber = std::rand() % 100; // Генерируем случайное число от 0 до 99
myStack.push(randomNumber);
sum += randomNumber;
}
std::cout << "Сумма элементов в стеке: " << sum << std::endl;
return 0;
}
Этот код сначала инициализирует генератор случайных чисел с использованием текущего времени, затем запрашивает у пользователя количество чисел (n), которые нужно добавить в стек. Затем он заполняет стек случайными числами в диапазоне от 0 до 99 и вычисляет сумму этих чисел, выводя ее на экран.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili