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

What is the difference among character and block devices, a. What is the di...

a. What is the difference among character and block devices? b. Discuss the method to make a Kernel Driver for the PC Speaker. c. Explain the socket structure with the help o

Clarify the operation of iret instruction, Clarify the operation of IRET in...

Clarify the operation of IRET instruction.  What memory locations comprise the vector for an INT 34 instruction? Interrupt return (IRET) instruction is used only with hardware

Explain one dimensional array, Explain one dimensional arrays In one di...

Explain one dimensional arrays In one dimensional arrays array name is really a pointer to the first element in the array. Second element of the array can be accessed by using

Why object oriented development not only allows reuse, Why object oriented ...

Why object oriented development not only allows reuse In a wider way we can say that object oriented development not only allows reuse and information sharing within an applica

Explain debug monitors, Explain Debug monitors. Debug monitors give d...

Explain Debug monitors. Debug monitors give debugging support for a program. A debug monitor executes the program being debugged in its own control thereby giving execution e

Multiple assign statements targeting the same wire, What logic is inferred ...

What logic is inferred when there are multiple assign statements targeting the same wire? It's illegal to specify multiple assign statements to the same wire in a synthesizable

What is a symbolic constant, What is a symbolic constant? How it is defined...

What is a symbolic constant? How it is defined ? Symbolic constants are constants of any type declared by using the #define compiler directive. It is a preprocessor directive.

Modelsim, design a basic computer

design a basic computer

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