Informatică, întrebare adresată de Mihai2628, 8 ani în urmă

Se dau caractere pana se introduce '*'.
Creati si afisati o stiva cu aceste caractere.

ex: abcDEFab* --> baFEDcba


boiustef: Mihai, în Kobol scriem codul?
boiustef: dacă scrii din start tot ce-ţi trebuie, primeşti mai repede răspunsul...
Mihai2628: in c++, scuze
boiustef: ok

Răspunsuri la întrebare

Răspuns de boiustef
1

Răspuns:

#include <iostream>

#include <cstring>

using namespace std;

struct Nod{

char val;

Nod* next;

};

void push(Nod*& vf, char v){

Nod* nou=new Nod;

nou->val=v;

nou->next=vf;

vf=nou;

}

void afisare(Nod *vf)

{

   cout << "Continutul Stivei: ";

   if (vf==NULL) cout << " stiva este vida...";

   else

   {

       Nod *p=vf;

       while (p!=NULL)

       {

           cout << p->val;

           p=p->next;

       }

   }

   cout << "\n";

}

char s[200];

Nod *vf=NULL;

int main()

{

   cout << "introdu sirul de caractere, ultimul este '*' : ";

   cin.getline(s,200);

   int i;

   if (s[0]!='*')

   {

       vf=new Nod; vf->val=s[0];

       vf->next=NULL;

       i=1;

       while (s[i]!='*' && i<strlen(s))

       {

           push(vf,s[i]);

           ++i;

       }

   }

   afisare(vf);

}

Explicație:

am citit caracterele ca un sir de caractere si din el am creat stiva


Mihai2628: Am înteles. Mersi!
boiustef: f.b., cu plăcere
Alte întrebări interesante