University of Ottawa

School of IT and Engineering

CSI1102

 

Lab Assignment 1: Due to be marked in your scheduled lab time, week of January 24, 2005

 

 

The aim of this assignment is to familiarize you with the Java environment and to introduce you to using predefined classes.

 

  1. Design and implement an application called Hello.java which prints the phrase “Hello CSI 1102, Winter 2005!!!” on one line and the phrase “Enjoy the course and have fun!” on another line.            [3 marks]

 

  1. Design and implement an application Password.java that produces and prints a random password. The password is composed of random digits 0-9 and characters a-z. The first element is a character, the second is a digit, then a character, a digit, a character, a digit, a character, and a digit (8 elements in total). An example is: e5c8a0b6.           [7 marks]

 

  1. Design and implement an application Current.java that computes the intensity of the electrical current in a resistor of resistance R, when the applied voltage is V. Ask the user to input the value of R (in ohms) and the values of V (in volts). Then print the value of the intensity I, computed with the formula I = V / R. Ask the user if she/he wants to repeat the process, and allow it repeatedly while the answer is “y” or “Y”. This question will familiarize you with reading input from the keyboard, using the class cs1.Keyboard provided by the authors of the textbook. (Don’t forget to run your program with Run with console instead of Run application.)               [9 marks]

 

  1. Design and implement an application called MonsterGame.java that simulates a simple game.  You have three magic arrows to kill an evil monster. When you fire an arrow, the program generates a random integer between 0 and 10 (including 0 and 10).  This number shows how much damage you did to the monster. The monster has 10 energy points initially. After each arrow is fired (by simply printing a message that says it was fired and shows the random number), the monster’s energy is decreased by the generated number (but not decreased below zero). After you fire the first arrow, if the monster’s energy is zero, print the message “You won!!!”; otherwise you fire the second arrow. After you fire the second arrow, if the monster’s energy is zero, you win; otherwise you fire the third arrow. If in the end the energy is zero, you win; otherwise, print the message: “Nice try. Almost there!”. After each arrow is fired, print a message with the current energy level left for the monster. After the game is over, print the message “Do you want to play again? (y/n)”, and allow the user to play as many times as desired.             [11 marks]