Function makestk-predicate function emptystk, Computer Engineering

Assignment Help:

1. Create the following ADTs.

(a) Write the constructor function makestk, predicate function emptystk and mutator functions pushstk and popstk:

i. makestk returns a new stack in the form of a tagged tuple: ('stack',[]).

e.g. >>> cellstk=makestk()

>>> cellstk

('stack', [])

ii. emptystk returns True or False depending on whether the given stack is empty or not.

e.g. >>> emptystk(cellstk)

True

iii. pushstk accepts a stack and an element, and adds the element to the stack at position 0 (see part (b) below for the creation of cell0).

e.g. >>> pushstk(cellstk,cell0)

>>> cellstk

('stack', [('cell', (0, 0), ['t', 'b', 'r', 'l'])])

iv. popstk removes the element at position 0 of the given stack.

e.g. >>> popstk(cellstk)

('cell', (0, 0), ['t', 'b', 'r', 'l'])

>>> cellstk

('stack', [])

(b) Write a constructor function called makecell, accessor functions getx, gety and getwalls, and mutator functions removetw, removebw, removerw, removelw.

i. makecell accepts a tuple which consists of the x and y co-ordinate of the cell being created. It returns a cell in the form of a tagged tuple:

('cell',(x,y),['t','b','r','l']).

The list represents the four walls of the cell: top, bottom, right and left.

e.g. >>> cell0=makecell((0,0))

>>> cell0

('cell', (0, 0), ['t', 'b', 'r', 'l'])

ii. getx and gety return the x and y co-ordinates (respectively) of a given cell.

e.g. >>> getx(cell0)

0

iii. getwalls returns the list of walls that are intact for a given cell

e.g. >>> getwalls(cell0)

['t', 'b', 'r', 'l']

iv. remove?w removes the associated wall from the list of walls of a given cell.

e.g. >>> removetw(cell0)

>>> cell0

('cell', (0, 0), ['b', 'r', 'l'])


Related Discussions:- Function makestk-predicate function emptystk

Find the largest and the smallest array values, Q. Find the Largest and the...

Q. Find the Largest and the Smallest Array Values? Write down a program to find the largest as well as the smallest numbers from a given array. This program uses JGE (jump grea

What is block size of cache memory, Q. What is Block size of cache memory? ...

Q. What is Block size of cache memory? Block Size: Block size means unit of data (few memory words) exchanged between main and cache memory. As block size increases from very

Give the organization of centralized store program control, Give the organi...

Give the organization of centralized store program control ( SPC). Within stored program control systems, a program or set of instructions for the computer that is stored in

Explain essential loop in process scheduling, Explain essential loop in Pro...

Explain essential loop in Process Scheduling . The complex part of scheduling is to balance policy enforcement along with resource optimization so as to pick the best job to run

Mathlab , Windy Grid World This assignment is to use Reinforcement Learni...

Windy Grid World This assignment is to use Reinforcement Learning to solve the following "Windy Grid World" problem illustrated in the above picture. Each cell in the image is a

State about the internet services, State about the Internet services I...

State about the Internet services Internet services are provided automatically, in many other implementations the certificate is stored on a separate database or token such as

Why isdn handles data pertaining, ISDN handles data pertaining to? ISDN...

ISDN handles data pertaining to? ISDN handles data pertaining to all digital services.

Pre order given find post order ?, The preorder traversal sequence of a bin...

The preorder traversal sequence of a binary search tree is 30, 20, 10, 15, 25, 23, 39, 35, 42. Which one of the following is the postorder traversal sequence of the same tree?

What do you mean by prototype, Q. What do you mean by Prototype? A prot...

Q. What do you mean by Prototype? A prototyping approach lay emphasis on the construction model of a system. Designing and building a scaled-down though functional version of a

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