Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2010, 09:46   #1
GladiatoR24
 
Регистрация: 08.05.2010
Сообщений: 4
По умолчанию Нужно разобраться со стеком

Доброго времени суток... Помогите, пожалуйста, разобраться со стеком.

Задание следующие : "написать программу для перестановки элементов стека x(1),x(2),x(3),...x(n)=>x(2),x(3),. ..x(n),x(1). Элементы пронумерованы в порядке их введения в стек." Нужна программа под dos, без доп. библиотек.

Приведу пример программы работы со стеком. В программе вводится стек из н эллементов, и выводится на экран...
Код:
 
#include <iostream.h>
 
struct node
{
 float num;
 node* next;
} ;
 
//prototip
node* push(node* , float);
void printstack(node* );
node* pop(node*);
 
void main()
{
   float what;
   int n,i;
   node* top=0;
   cout<<"input n\n";
   cin>>n;
   cout<<endl;
 
   //input in stek
   cout<<"input what"<< n<<"value\n";
   for (i=1;i<=n;i++)
   {
     cin>>what;
     top= push(top, what);
   }
 
     //print stek
  printstack(top);
   int k=0;
 
   //output from stek
   while(top)
   {
     if (top->num >0)
       k++;
     top= pop(top);
   }
   cout<<"k="<< k<<"\n";
}
 
node* push(node* top, float what)
{
  node* pv=new node;
  pv->num=what;
  pv->next=top;
  return pv;
}
 
void printstack(node* top)
{
  float what;
 
  cout<<"stek:\n";
  while (top)
  {
    cout<<top->num<<" ";
    top=top->next;
 
  }
  cout<<endl;
  }
 
 node* pop(node* top)
 {
   node* pv=top->next;
   delete top;
   return pv;
 }
Помогите, кто чем может, очень нужна эта программа!!!
GladiatoR24 вне форума Ответить с цитированием
Старый 08.05.2010, 11:34   #2
Ozerich
Студент 1 курса
Форумчанин Подтвердите свой е-майл
 
Аватар для Ozerich
 
Регистрация: 27.06.2008
Сообщений: 959
По умолчанию

Перегоняешь этот стек в лист, потом там первый элемент ставишь за последним. И обратно лист в стек. Халяву тут не пишут, если надо код, стучись в асю.
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
Ozerich вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа со стеком,С++ Singularity Помощь студентам 0 04.05.2010 19:31
Prolog нужно разобраться в коде Mira-girl Помощь студентам 1 11.04.2010 00:12
Помогите разобраться что нужно для создания браузерной игры TYPIST PHP 7 22.06.2009 21:48
нужно разобраться в коде паскаля. in, out из файла [silver beast] Помощь студентам 6 22.01.2009 08:42
помогите разобраться с массивами.очень нужно катя@90 Помощь студентам 8 16.11.2008 13:48