You are to write a program that will read a file of


You are to write a program that will read a file of scrambled 7-letter strings, and then prints out the highest valued legal Scrabble word(s). Before reading the file, your program will store a list of words read from the file words.txt. That file contains both legal and illegal words. Scrabble words are up to seven letters long, and are only composed of lowercase alphabetic characters. Your program will have to avoid storing the illegal words.

Your program should have a Word class that contains 1) a real Scrabble word stored in a string; and 2) the Scrabble value of the word. These Words must be stored in a set. You must create a map of letters to values, and use the map in determining the value of a word. The values, from 'a' to 'z' are 1, 3, 3, 2, 1, 4, 2, 4, 2, 8, 5, 1, 3, 1, 1, 3, 10, 1, 1, 1, 1, 4, 4, 8, 4, and 10. I initialized an array of shorts, named
values, with these values, and then inserted them into the map.

The toughest part of this program is designing an algorithm to test all of the permutations of the file string and its substrings. You must use rotate and/or next_permutation to help in this task. Besides pp. 878-879 in the text, you will find more information on the web by searching for "STL rotate", or "next_permutation". You are not allowed to use any arrays or pointers in this program, other than the array of shorts named values. Your program must compile without warnings when compiled with -Wall -ansi. Your output must match mine exactly!

You will find words.txt, File1.txt, and my scrabble.out in ~ssdavis/40/p8

[ssdavis@lect1 p8]$ cat File1.txt
abcdefg
ableujk
ttabeed
olbisha
abjects
ytvxyzk
[ssdavis@lect1 p8]$ scrabble.out File1.txt
9 abcdefg: badge cafe face
15 ableujk: jake juke
10 ttabeed: abetted
13 olbisha: abolish
17 abjects: abject
0 ytvxyzk: No words found.
[ssdavis@lect1 p8]$

Request for Solution File

Ask an Expert for Answer!!
Computer Networking: You are to write a program that will read a file of
Reference No:- TGS01033650

Expected delivery within 24 Hours