Java Reference
In-Depth Information
13. Modify Programming Project 6.12 to use a single array instead of three arrays. This
can be accomplished by creating a Trivia object that encapsulates the question,
answer, and point value for a particular trivia question. Next, create a single array
of five Trivia objects instead of three separate arrays for the question, answer,
and point values. This change will make your game more scalable if there were
ever additional properties to add to a Trivia object (you would not need to add
another array for each property). Although the program has internally changed to
a single array of objects, the execution of the program should be identical to before.
14. Traditional password entry schemes are susceptible to “shoulder surfing” in which
an attacker watches an unsuspecting user enter his or her password or PIN number
and uses it later to gain access to the account. One way to combat this problem
is with a randomized challenge-response system. In these systems, the user enters
different information every time based on a secret in response to a randomly gener-
ated challenge. Consider the following scheme in which the password consists of a
five-digit PIN number (00000 to 99999). Each digit is assigned a random number
that is 1, 2, or 3. The user enters the random numbers that correspond to their PIN
instead of their actual PIN numbers.
For example, consider an actual PIN number of 12345. To authenticate it, the user
would be presented with a screen such as the following:
PIN: 0 1 2 3 4 5 6 7 8 9
NUM: 3 2 3 1 1 3 2 2 1 3
The user would enter 23113 instead of 12345. This does not divulge the password
even if an attacker intercepts the entry because 23113 could correspond to other
PIN numbers, such as 69440 or 70439. The next time the user logs in, a different
sequence of random numbers would be generated, such as the following:
PIN: 0 1 2 3 4 5 6 7 8 9
NUM: 1 1 2 3 1 2 2 3 3 3
Your program should simulate the authentication process. Store an actual PIN
number in your program. The program should use an array to assign random
numbers to the digits from 0 to 9. Output the random digits to the screen, input
the response from the user, and output whether or not the user's response correctly
matches the PIN number.
15. Programming Project 4.12 asked you to create a PizzaOrder class that stores an
order consisting of up to three pizzas. Modify the class to store the pizzas using an
array. This will allow the class to include an arbitrary number of pizzas in the order
instead of a maximum of three. The setNumPizzas method can be used to create
an array of the appropriate size. The array structure allows you to eliminate the
methods setPizza1 , setPizza2 , and setPizza3 and replace them with a single
method, setPizza(int index , Pizza newPizza ). Include appropriate tests to
determine if the new PizzaOrder class is working correctly.
VideoNote
Solution to
Programming
Project 6.15
Search WWH ::




Custom Search