Write a program that will solve a puzzle, Computer Engineering

Assignment Help:

You will write a program that will solve a version of the common newspaper puzzle \word search." In the puzzle you are given a grid lled with characters and a list of words to nd and circle in the grid. Words may go left-to-right, top-to-bottom or diagonally (upper-left to lower-right).

Your program will solve this problem with a twist: the words can \wrap around." Consider the example below.

e b h a t
d e t n t
a t n o h
t u e t t

The example has several \wraparound" words. the word \hat" starts at position (0,2) (in row, column format) and is horizontal. The word \tube" starts at position (2,1) and is vertical. The word \tote" starts at position (1,2) and is diagonal.

When determining the next diagonal position, you can think of it as a two step process: compute the next column (as you would for a horizontal sequence); compute the next row (as you would for a vertical sequence). Note that the next diagonal position after the lower right position is always (0,0).

Wraparound words can even overlap themselves! For example, the word \dated" appears vertically beginning at position (1,0). They can even wraparound multiple times! Your program will read a le containing the grid and the list of words to search for and you will output for each word all occurrences of it in the grid. Your output should, for each word, list all occurrences in the format we've used above (i.e., beginning coordinate and \type" { horizontal, vertical or diagonal).


Related Discussions:- Write a program that will solve a puzzle

Explain switching system of a finite state machine model, Show how finite s...

Show how finite state machine model helps in designing a switching system and give a typical example. Switching system fundamentally belongs to the class of finite state machi

Allocation of bits among opcode and operand, Allocation of Bits among Opcod...

Allocation of Bits among Opcode and Operand The trade-off here is between numbers of bits of opcode vs. the addressing capabilities. An interesting development in this regard i

Contain your variable names and definitions, Give your analysis for the fol...

Give your analysis for the following problem statement: You require to write a program that calculates the area and perimeter of a rectangle whose dimensions (Length &width) are gi

Explain the use of ssl to secure the network, Explain the use of SSL to sec...

Explain the use of SSL to secure the network.  SSL (Secure Sockets Layer) is a protocol developed by Netscape for transferring private documents by the Internet. SSL works by u

C++, #question.constructors and destructors

#question.constructors and destructors

Symmetric and asymmetric encryption algorithms, Compare and contrast symmet...

Compare and contrast symmetric & asymmetric encryption algorithms. Your response should contain a brief overview of the cryptographic basis for every type of algorithm, and a compa

Difference between the physical drive and the logical drive., A physical dr...

A physical drive is drive the in which you can physically see in the computer system itself. That is the gadget itself. Logical drive is placed inside the physical drive and th

C-programing, c-program for the minimum total number of shelves

c-program for the minimum total number of shelves

Loop level-levels of parallel processing, Loop Level At this level, rep...

Loop Level At this level, repeated loop iterations are the applicants for parallel execution. However, data dependencies among subsequent iterations may limit parallel executio

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