Zasobnik
#include <iostream>
using namespace std;
struct uzel{
int data;
uzel *dalsi; /*prostor pro adresu dalsiho prvku*/
};
uzel *vrchol=NULL; /*NULL je kvuli inicializaci zasobniku*/
void push(int vstupniData){
if(vrchol==NULL){
std::cout<<"zasobnik je prazdny"<<std::endl;
vrchol=new uzel;/*vyvtvorime pro vrchol novy prvek*/
std::cout<<"adresa vrcholu: "<<vrchol<<std::endl;
vrchol->data=vstupniData;
std::cout<<vrchol->data<<std::endl;
vrchol->dalsi=NULL;
}
else{
uzel *novyPrvek =new uzel; /*pomocna promenna pro vytvoreni prvku*/
std::cout<<"vytvarim dalsi prvek:"<<novyPrvek<<std:: endl;
novyPrvek->data=vstupniData;
novyPrvek->dalsi=vrchol; /*napojeni noveho prvku na vrchol*/
vrchol=novyPrvek; /*vrchol posuneme na novy prvek*/
cout<<vrchol->data<<" "<<std::endl;
}
}
void printMag(uzel *vstup){
cout<<endl;
cout<<"************"<<endl;
while(vstup!=NULL){
std::cout<<vstup->data<<" ";
std::cout<<vstup<<endl;
vstup=vstup->dalsi;
}
cout<<endl<<"************"<<endl;
}
int main()
{
for(int i=0;i<50;i++){
push(i);
}
printMag(vrchol);
return 0;
}
Neformátovaný
Přidáno: 7.6.2017
Expirace: Neuvedeno