-
-
Save dafr32/02f1f7d3696b1611b374 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <cstdlib> | |
#include <iomanip> | |
using namespace std; | |
/* | |
Odwrotna notacja polska ONP | |
Koncepcja: | |
1. Utworzenie struktury elementu listy | |
2. Utworzyć wskaźnik na pierwszy element listy | |
3. Utworzyc funkcję Push() | |
4. Utworzyc funkcję Pop() | |
5. Pobrać ciąg ONP z klawiatury | |
6. Obliczyć wartość działania | |
*/ | |
//1. Utworzenie struktury elementu listy | |
struct T_element{ | |
int liczba; | |
T_element *nastepny; | |
}; | |
//2. Utworzyć wskaźnik na element | |
T_element *pierwszy = NULL; | |
//połóż na stos | |
void Pop(int parametr1) | |
{ | |
T_element *tmp = new T_element; // utworzenie nowego dynamicznego wskaźnika | |
// na nieistniejącą zmienną | |
// 2. przypisać mu wartości parametru | |
tmp->liczba = parametr1; | |
// 3. Umieszczenie elementu na początku listy | |
tmp->nastepny = pierwszy; | |
pierwszy = tmp; | |
} | |
//zdejmij ze stosu | |
int Push() | |
{ | |
T_element *tmp = pierwszy; | |
if (pierwszy==NULL) return 0; | |
pierwszy = pierwszy->nastepny; | |
// jeśli poszukiwane imie jest w pierwszym elemencie | |
return tmp->liczba; | |
} | |
int main() | |
{ | |
char opcja; | |
int liczba; | |
do { | |
cout<<" MENU \n" | |
<<"1. Dodaj element Pop()\n" | |
<<"2. Usun element Push()\n" | |
<<"4. Zakoncz program \n" | |
<<"------------------------------ \n" | |
<<"Wynierz opcje (1-4):"; | |
cin>>opcja; | |
switch(opcja-48) //kod znaku - kod znaku '0' | |
{ | |
case 1: cout<<"Podaj wartość:";cin>>liczba; | |
Pop(liczba); | |
break; | |
case 2: cout<<"element stosu:"<<Push()<<endl;; | |
break; | |
case 4: return 0; | |
} | |
// system("clear"); | |
}while(true); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment