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

Laser printers, Laser Printers: These printers can print a whole page ...

Laser Printers: These printers can print a whole page at one command, offer highest quality and can combine text, graphics, etc. They are generally restricted to A4 paper and

Simplified expression, what is the logic diagram for the Boolean expression...

what is the logic diagram for the Boolean expression x''y + xy'' + xz

Types of operating systems, Operating Systems:  An operating system is a se...

Operating Systems:  An operating system is a set of programs that manage computer hardware resources and provide common services for application software.  There are following kind

Grammar, Given the following grammar: -> [ , ] | -> | { } -> a...

Given the following grammar: -> [ , ] | -> | { } -> a | b | cwhich are the strings generated by the grammar? Show the parse tree(s). a). { [ a , b ] }b). [ { a } , b ]

What are the commonly used input/output functions in c, Problem 1 What ...

Problem 1 What is the significance of the keyword 'extern' in a function declaration? Explanation of significance of Keyword 'extern' in function declaration Probl

Logic instructions , They are used to act upon logic operations on the oper...

They are used to act upon logic operations on the operators. AND OR, NEG NOT TEST XOR AND INSTRUCTION Function: It acts upon the conjunction of the operators bit by bit. Syntax: A

SOFTWARE, main task of sofware developper

main task of sofware developper

Ultrasonic waves, Ultrasonic Waves: Sound waves outside the audible range o...

Ultrasonic Waves: Sound waves outside the audible range of humans. Ultrasonic waves consist of frequencies greater than 20 kHz and exist in excess of 25 MHz. Applications include i

Operating system, Ask question describes deadlock avoidance#Minimum 100 wor...

Ask question describes deadlock avoidance#Minimum 100 words accepted#

BARCODES, WHY ISN''T THE PRICE STORED ON THE BARCODE

WHY ISN''T THE PRICE STORED ON THE BARCODE

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