Building Java Programs

Lab 2: Expressions, Variables, and Loops

Except where otherwise noted, the contents of this document are Copyright 2010 Stuart Reges and Marty Stepp.

lab document created by Whitaker Brand and Marty Stepp

Basic lab instructions

Today's lab

Goals for today:

Exercise : Expressions (2.1)

Write the results of each of the following expressions.

12 / 5 + 8 / 4
4
3 * 4 + 15 / 2
19
-(1 + 2 * 3 + (1 + 2) * 3)
-16
42 % 5 + 16 % 3
3
5 * 6 / 4 % 3 - 23 / (14 % 6)
-10
30 % 9 + 5 % 8 - 11 % 4 % 2
7
1 + 9 / 2 * 2.0
9.0
2.5 * 2 + 17 / 4
9.0
4.5 / 3 / 2 + 1
1.75
46 / 3 / 2.0 / 3 * 4/5
2.0
50 / 9 / 2.0 + 200 / 10 / (5.0 / 2)
10.5

Exercise : Variable declaration syntax

Which of the following choices is the correct syntax for declaring a real number variable named grade and initializing its value to 4.0?

Exercise : Variable assignment syntax

Suppose you have a variable named grade, set to 1.6:

double grade = 1.6;   // uh-oh

Suppose later in the program's code, we want to change the value of grade to 4.0. Which is the correct syntax to do this?

Exercise : a, b, and c

What are the values of a, b, and c after the following statements? (It may help you to write down their values after each line.)

int a = 5;
int b = 10;
int c = b;
a++;
b--;
c = c + a;

(answer on next slide)

Exercise - answer

Exercise : i, j, and k

What are the values of i, j, and k after the following statements?
(What is this code really doing?)

int i = 2;
int j = 3;
int k = 4;
i = i * j * k;
j = i / j / k;
k = i / j / k;
i = i / j / k;

(answer on next slide)

Exercise - answer

Exercise : Birthday variables

Exercise : Syntax errors

answer on next slide...

Exercise - answer

  1. line 4: missing + between "x is" and x
  2. line 4: cannot print the value of x before assigning it a value
  3. line 6: cannot assign 15.2 into a variable of type int
  4. line 6: should not redeclare the variable's type
  5. line 7: " mark should be between now and +
  6. line 10: should not write the word int here
  7. line 10: variable y should be same type as x
  8. line 10: does not properly set y to be 1 more than x
  9. line 11: and should be in quotes with surrounding spaces

Exercise - corrected version

Exercise : Equation

Suppose you have a real number variable x. Write a Java expression that computes a variable named y storing the following value:

y = 12.3x4 - 9.1x3 + 19.3x2 - 4.6x + 34.2

(We haven't learned a way to do exponents yet, but you can simulate them using several multiplications.)

Use the example program on the next slide to test your code.

Exercise - Example code

Copy/paste this program into jGRASP to test your solution.

// expected output:
// y is 7043.7

public class EquationY {
    public static void main(String[] args) {
        double x = 5;

        double y = put your expression for y here ;

        System.out.println("y is " + y);
    }
}

(answer on next slide)

Exercise - answer

double y = 12.3*x*x*x*x - 9.1*x*x*x + 19.3*x*x - 4.6*x + 34.2;

If you want an added challenge, try to come up with a way to compute the above value while using the * operator no more than 4 times.

(click Next → for answer)

double y = (((12.3 * x - 9.1) * x + 19.3) * x - 4.6) * x + 34.2;

Exercise : What's the output?

Exercise : for loop practice

continued on the next slide...

Exercise - expected output

Exercise : Sequence of numbers

Exercise : Sequence of characters

Exercise : What's the output?

Exercise - answer

Exercise : What's the output?

Exercise - answer

Answer:

1	2	3	4	5	6	7	8	9	10
2	4	6	8	10	12	14	16	18	20
3	6	9	12	15	18	21	24	27	30
4	8	12	16	20	24	28	32	36	40
5	10	15	20	25	30	35	40	45	50
6	12	18	24	30	36	42	48	54	60
7	14	21	28	35	42	49	56	63	70
8	16	24	32	40	48	56	64	72	80
9	18	27	36	45	54	63	72	81	90
10	20	30	40	50	60	70	80	90	100

Exercise : Number lines, part 1

Exercise : Number lines, part 2

Exercise : Number lines, part 3

Exercise : printing a design

If you finish them all...

If you finish all the exercises, try out our Practice-It web tool. It lets you solve Java problems from our Building Java Programs textbook.

You can view an exercise, type a solution, and submit it to see if you have solved it correctly.

Choose some problems from Chapter 2 and try to solve them! We suggest doing some Exercises related to loops.