
public class VariableExamples {

	public static void main(String[] args) {

		// SLIDES
		// Declaring a variable
		int num;
		double average = 9.6;
		char letter = 'j';
		String name;

		// Variables - Pattern - Counter
		int n = 0;
		n = n + 1; // or n++;  
		System.out.println("n = " + n);

		//Variables - Pattern - Accumulator
		int newNumber = 7;
		int sum = 0;
		sum = sum + newNumber; // this happens multiple times
								// could use sum += newNumber;

		// DEMO 1
		System.out.println("DEMO 1");
		String a = "cat";
		String b = "parrot";
		String c = "";
		c = a + b;
		b = c + a;
		a = c;
		System.out.println(a + "\t" + b + "\t" + c);

		// DEMO 2 - Common Errors
		/* 
		System.out.println("DEMO 2 - Common Errors");
		int s = 5;
		double t = 2.0;
		String message = "Hi There";
		s = t;
		t = s;
		s = s % t;
		s + t = s;
		int s = 7;
		System.out.println("\n" + s + "\t" + t + "\t" + message + v);
		*/

		// DEMO 3 - The Swap
		System.out.println("DEMO 3 - The Swap");
		int num1 = 8;
		int num2 = -3;
		System.out.println("num1 = " + num1 + " num2 = " + num2);
		num1 = num2;
		num2 = num1;
		System.out.println("num1 = " + num1 + " num2 = " + num2);

		System.out.println();
		// Variables - IN-CLASS PRACTICE
		// #1
		System.out.println("#1");
		int d = 78;
		int e = -40;
		double f = 0;
		d = d + 1;
		d++;
		d = d + e;
		f = d / e;
		System.out.println(d + "\t" + e + "\t" + f);

		// #2 
		System.out.println("#2");
		int max;
		int min = 10;
		max = 17 - 4 / 10;
		max = max + 6;
		min = max - min;
		System.out.print(max * 3 + " ");
		System.out.println(max + min);
		System.out.print(max + " ");
		System.out.println(min);

		// Extra - Practice BMI
		double mass = 178.5; // pounds
		double height = 64.0; // inches
		double BMI = mass / (height * height) * 703;
		System.out.println("BMI = " + BMI);
		System.out.println();

		// Extra - Practice Day of the Week - August 29, 2022
		int year = 2022;
		int month = 8;
		int day = 29;
		double x2 = 0.0, y2 = 0.0, z2 = 0.0; // temporary variables for calculations
		int dayOfWeek = 0;
		x2 = year - (14 - month) / 12;
		y2 = x2 + x2 / 4 - x2 / 100 + x2 / 400;
		z2 = month + 12 * ((14 - month) / 12) - 2;
		dayOfWeek = (int) (day + y2 + (31 * z2) / 12) % 7;
		System.out.println("08/29/2022 is a " + dayOfWeek + "(0 = Sunday 1 = Monday, etc.)");

	}
}
