Assignment: #PasswordGiver Points: 3 Due: 10/13/2017

Specification

Write a Java class PasswordGiver that prints randomly generated passwords.

Prompt the user to enter how many passwords they want.

Each generated password must be between 6 and 13 characters (inclusive) in length. The length is randomly decided (i.e. your program must pick random numbers in the [6,13] whole number interval).

The password must consist of at least one upper-case letter; at least one lower-case letter; at least one digit, and, at least one punctuation character. To set the other characters, your program must randomly decide what kind of character to use (upper-case, lower-case, digit, punctuation) and then it randomly picks that kind of character.

The placement of characters in the password must be random. For example, the upper-case letter cannot always be the first character of the password, nor can the digit always be the fourth character and so on. [Ask about this during class and we'll ponder it.]

Print the passwords one per line.

Punctuation Characters

All "punctuation" characters are allowed; however, the following subset of characters is sufficient.

   ~ ! @ # $ % ^ & * ( )  - + = { [ } ] | , . ?
Example Output
   Enter number of passwords to give: 20   <-- user entered 20
   %?B_y1
   sU}d$P.@5
   mC$8CO0@$dzQ{
   #cUeq0
   ]1iNO8?8ilRh@
   H#6t510
   iOK_@L2jYSi0_
   5p?D8&kc[9h
   @+{2Eg&h,3J
   $k3Xg8w
   Co2Z$a3
   eJr,#7d
   193@jmibJk3
   =(fHQCS16_
   Nu73[1
   JjoZytssr[{3=
   5DjMpAf|]h1
   x96_v_EsJn6
   3]XyZ]6Dt7g
   sT[K2m81K