Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // uloha-2-1.c -- Tyzden 2 - Uloha 1
- // Jan Panis, 29.9.2014 12:02:37
- #include <stdio.h>
- char pole[10000];
- int i=0,j,first=0;
- char c,g,pom,zapamataj,a,b;
- void push(char operator1)
- {
- pole[i]=operator1;
- i++;
- }
- char pop()
- {
- char operator1;
- i--;
- operator1=pole[i];
- return operator1;
- }
- int main()
- {
- j=0;
- i=0;
- first=0;
- while ((c=getchar())!=EOF)
- {
- if (c=='\n')
- {
- while (i!=0)
- {
- b=pop();
- putchar(b);
- }
- putchar('\n');
- j=0;
- i=0;
- first=0;
- }
- if ((c=='+') || (c=='-') || (c=='*') || (c=='/'))
- {
- if (((pole[i-1]=='+') || (pole[i-1]=='-') || (pole[i-1]=='(')) && ((c=='*') || (c=='/')))
- {
- push(c);
- }
- else
- {
- if (((pole[i-1]=='/') || (pole[i-1]=='*') || (pole[i-1]=='(')) && ((c=='-') || (c=='+')))
- {
- zapamataj=c;
- while (((pole[i-1]!='*') || (pole[i-1]!='/')) && (pole[i-1]!='(') && (i>=0))
- {
- if (i<=0)
- {
- break;
- }
- pom=pop();
- putchar(pom);
- }
- push(zapamataj);
- }
- else
- {
- if (first==0)
- {
- push(c);
- first=1;
- }
- else
- {
- pom=pop();
- putchar(pom);
- push(c);
- }
- }
- }
- }
- if (c=='(')
- {
- push(c);
- }
- if (c==')')
- {
- while ((a=pop())!='(')
- {
- if (i<=0)
- {
- break;
- }
- putchar(a);
- }
- }
- if ((c>='A') && (c<='Z'))
- {
- putchar(c);
- }
- }
- while (i!=0)
- {
- c=pop();
- putchar(c);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement