Write the function pop in c, Basic Computer Science

Assignment Help:

QUESTION

(a) Convert each of the following expressions to prefix and postfix.

(i) (A+B)*(C+D)

(ii) A-B/(C*D^E) (^ denotes exponentiation)

(b) The following algorithm converts an infix expression into its postfix representation. We have assumed that the infix expressions contain only the operators +, -, * and /. The expressions do not contain parentheses. Examples of valid expressions are A+B*C and A/B+C/D-E.

opstk = the empty stack;

while (not end of input) {

symb = next input character;

if (symb is an operand)

add symb to the postfix string

else{

while(!empty(opstk) && prcd(stacktop(opstk),symb)){

topsymb = pop(opstk);

add topsymb to the postfix string;

}

push(opstk,symb);

}

}

while(!empty(opstk)){

topsymb = pop(opstk);

add topsymb to the postfix string;

}

(i) Write the function empty in C. The function empty must return TRUE if the stack is empty and FALSE if the stack is not empty.

(ii) Write the function pop in C. The function must perform the following three actions:

1. If the stack is empty, print a warning message and halt execution.

2. Remove the top element from the stack.

3. Return the top element of the stack to the calling function.

(iii) Write the function prcd(op1,op2) in C, where op1 and op2 are characters representing operators. The function prcd(op1,op2) must return TRUE if op1 has precedence over op2 when op1 appears to the left of op2 in an infix expression. The function prcd(op1,op2) returns FALSE otherwise.

 


Related Discussions:- Write the function pop in c

Accessing other computers, Accessing Other Computers The advanced netw...

Accessing Other Computers The advanced networking features of Windows combined with the easy to use user interface make the task of sharing information with other computers/us

Explanation pre increment with example, Problem 1 What is precedence of...

Problem 1 What is precedence of operators? How are expressions evaluated using precedences? Defining precedence of operators Explanation of how expressions are evaluat

Explain the important features of creational patterns, Question 1 Explain ...

Question 1 Explain the role of object oriented designers in developing a software system Question 2 What are the four essential elements of design patterns? Explain Question 3

Short program to practice assembly language loops, Purpose of Code This...

Purpose of Code This is a short program to practice assembly language loops and if/else statements. You will use various jump commands and the cmp instruction.  The progra

Database management software, Database Management Software: For storage of...

Database Management Software: For storage of large amounts of varied data, and rapid retrieval and interpretations of data, the database is the ideal tool. It is most useful for s

COMPUTER SYSTEM ARCHITECTURE, PLEASE HELP ME TO CONSTRUCT THE XOR GATE USIN...

PLEASE HELP ME TO CONSTRUCT THE XOR GATE USING ONLY NAND GATE

Synchronous and asynchronous transmission, Synchronous and Asynchronous Tra...

Synchronous and Asynchronous Transmission: Another method of setting of terminals denotes synchronous or asynchronous transmission. Many terminals can only communicate in one

Computers in laboratory organisation and management, Computers can be used ...

Computers can be used for better and more efficient management and organisation of laboratories. A computer like the human brain receives information, stores and processes it and t

Constant bit rate atm theory, For the connections that request a static amo...

For the connections that request a static amount of bandwidth that is continuously available during the connection lifetime. Is intended to support real time applications requiring

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd