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

Использование стека - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ На каком языке написанна программа? http://www.cyberforum.ru/cpp-beginners/thread603165.html
; Attributes: noreturn public start start proc near mov dx, 10h push cs pop ds assume ds:seg000 mov ah, 9 int 21h ; DOS - PRINT STRING
C++ Сортировка элементов вектора Добрый вечер! Набросал наглядный пример, который вызывает ошибку компиляции. class My_Class { public: struct Item { int a; http://www.cyberforum.ru/cpp-beginners/thread603162.html
C++ Цикл do while. Опредилить прирост и сумму вклада.
гражданин х первого марта открил счет в банке вложил 1000 рублей через каждий месяц размер вклада увеличиваеться на 2 % опредилить а)прирост вклада за каждий из 12 месяцев б)сумму вклада за каждий год на протяжени 10 лет
C++ Подскажите ,как отладить прогу
В матрице n*n поменять местами элементы симметрично побочной диагонали. пример: исходные данные : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 надо чтобы получилось: 16 12 8 4 15 11 7 3
C++ Наследование классов http://www.cyberforum.ru/cpp-beginners/thread603129.html
Доброго времени суток. Обращаюсь за помощью к Вам. Язык С++ стал изучать недавно и столкнулся вот с такой проблемой: Рассмотрим класс А Class A { protected: int a; //защищ.целочисл.свойство public: A(int x){a=x};// инициал.контруктор
C++ Бинарные файлы Всем привет) есть такое вот задание, у меня 4 вариант, основная проблема для меня - что есть такое таблица адресов в бинарном файле и как и с чем ее готовить, поделитесь знаниями пожалуйста. Картинок и формул в задании нет - значит перепечатываем его на форум! подробнее

Показать сообщение отдельно
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
13.06.2012, 13: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
#include <iostream>
 
 
int main() {
   const unsigned int stackSize = 128;
   unsigned int stackPos = 0,
                bufferStackPos = 0,
                n;
   int stack[ stackSize ],
       bufferStack[ stackSize ],
       number;
 
   std::cout << "Enter number of elements: ";
   std::cin >> n;
 
   for ( unsigned int i = 1; i <= n; i++ ) {
      std::cout << "Enter " << i << " element: ";
      std::cin >> number;
      
      while ( number < 0 ) {
         bufferStack[ bufferStackPos++ ] = number;
         
         std::cout << "Enter " << ++i << " element: ";
         std::cin >> number;
      }
      
      while ( bufferStackPos > 0 )
         stack[ stackPos++ ] = bufferStack[ --bufferStackPos ];
   }
 
   std::cout << std::endl;
 
   while ( stackPos > 0 )
      std::cout << stack[ --stackPos ] << ' ';
 
   std::cout << std::endl;
 
   return 0;
}
Добавлено через 17 минут
Единственно упустил: вложенный цикл
C++
1
2
3
4
5
6
      while ( number < 0 ) {
         bufferStack[ bufferStackPos++ ] = number;
         
         std::cout << "Enter " << ++i << " element: ";
         std::cin >> number;
      }
нужно изменить на
C++
1
2
3
4
5
6
7
8
9
      while ( number < 0 ) {
         bufferStack[ bufferStackPos++ ] = number;
 
         if ( i == n )
            break;         
 
         std::cout << "Enter " << ++i << " element: ";
         std::cin >> number;
      }
 
Текущее время: 04:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru