Back to 111 Main Page

Mobius strip

Assignment 1


Print the results of 5 simple math operations to the screen; then answer a few questions related to variables.

Textbook: 2.1 - 2.3
New concepts: Literals, data types, variables, assignment, initialization, string concatanation, simple math operators.

Part A01a [3 points]

Create a class named UsernameA01a in a file named Remember to replace Username with your actual UH username.

In the main method, do the following:

First, create (that is, declare and initialize) two int variables to hold two whole numbers. Print these to the screen so that your output looks something like this:

First number: 5
Second number: 2

Now print the results of using these two variables in five different math expressions using the +, -, *, /, and % operators. Don't just print out the result though; also print out what the expression is. So your final output should now look like this:

First number: 5
Second number: 2
5 + 2 = 7
5 - 2 = 3
5 * 2 = 10
5 / 2 = 2
5 % 2 = 1

In all your calculations and printing, use the two variables you declared at the beginning of your program. So, for example, in producing the above output, the number '5' and the number '2' each occur only once in my code--when I initialize my two variables. You can check you have this correct by changing the initial value of your variables to 7 and 3 and all your output should change appropriately. (Change them back to 5 and 2 when you're done though.)

You may use more than just two variables if you like. For instance, you might want a variable named result that holds the result of each operation until you print it out.

Part A01b [3 points]

Now that you have written your program, change the values assigned to your two variables in order to answer the following questions. Remember to recompile each time you change your code. You may also need to look in your book to learn more.

  1. What happens if you assign 5.5 (rather than 5) to the first variable? Why?
  2. What happens to your program when the second number is 0?
  3. What is the result of 3000000 * 1000? Why?
  4. What is the result of 14 / 5? Why is this not 2.8? Why is it not 3?
  5. What is the name of the % operator? What does it do?
  6. For multi-part assignments like this one--with parts a and b--would you prefer for each part to have its own webpage? (optional question)

When you are done answering these questions, set your two variables back to 5 and 2, so that your program produces output as above.

What to Submit

Part A01a: Upload your file to Tamarin (after 04 Sept).

Part A01b: Paste your answers to the five (or six) questions into the body of an email to me. Do not attach any files. Remember to follow the email submission policies--particularly regarding the subject line.

Grading [6 points]

1 - Compiles
Your program compiles successfully (no errors)
1 - Variables
You use variables, not literals, for the two numbers in all your calculations and printing. (0.5) You display the values of your two variables before you do the calculations. (0.5)
1 - Operators
Program displays the correct results of all 5 operations. (0.5) Prints the expression for each, as well as the result. (0.5)
3 - Questions Answered
0.5 points per question, plus 0.5 points for submitting properly.


Where's the demo code from class?
So we actually need to print the expressions to the screen?
Yes, your output should look like that shown above. So, for example, 5 / 2 = 2 will actually show up in your output. However, the numbers (5 and 2, in this case) should each only occur once in your code.
How do I print out the expressions?
You need to print out a String, something like: System.out.println("5 + 2 = "); But this alone doesn't work, since now, if you change the value of your variables, you need to go through every line of your code changing all the the "5"s and "2"s. So how do you print out "5 + 2 = ", but replace the 5 and 2 in your code with the appropriate variable names? (Hint: string concatanation.)

~ztomasze Index : TA Details: ICS111: A01
Last Edited: 03 Sep 2008
©2008 by Z. Tomaszewski.