From 593d6ba42f13d9cc0ea1b7c0abbf835ddc00d704 Mon Sep 17 00:00:00 2001 From: raedaniel36 Date: Tue, 17 Apr 2018 18:15:01 -0500 Subject: [PATCH 1/5] Chapter 2 Exercises. --- ch02/Arithmetic.java | 24 ++++++++++++++++++ ch02/Assignment.java | 25 +++++++++++++++++++ ch02/Constants.java | 27 ++++++++++++++++++++ ch02/DataTypes.java | 21 ++++++++++++++++ ch02/Date.java | 28 +++++++++++++++++++++ ch02/DoubleByZero.java | 14 +++++++++++ ch02/FirstVariable.java | 14 +++++++++++ ch02/IntByZero.java | 16 ++++++++++++ ch02/IntExtremes.java | 19 ++++++++++++++ ch02/LoveJava.java | 16 ++++++++++++ ch02/Time.java | 55 +++++++++++++++++++++++++++++++++++++++++ ch02/Withdrawal.java | 23 +++++++++++++++++ 12 files changed, 282 insertions(+) create mode 100644 ch02/Arithmetic.java create mode 100644 ch02/Assignment.java create mode 100644 ch02/Constants.java create mode 100644 ch02/DataTypes.java create mode 100644 ch02/Date.java create mode 100644 ch02/DoubleByZero.java create mode 100644 ch02/FirstVariable.java create mode 100644 ch02/IntByZero.java create mode 100644 ch02/IntExtremes.java create mode 100644 ch02/LoveJava.java create mode 100644 ch02/Time.java create mode 100644 ch02/Withdrawal.java diff --git a/ch02/Arithmetic.java b/ch02/Arithmetic.java new file mode 100644 index 0000000..2625233 --- /dev/null +++ b/ch02/Arithmetic.java @@ -0,0 +1,24 @@ +//Exercise 2-ES-1. +//Exercise 4. + +public class Arithmetic +{ + public static void main (String[] args) + { + int num = 100; + int factor = 20; + int sum = 0; + + sum = num + factor; // 100+20 + System.out.println("Addition sum: " + sum); + + sum = num - factor; // 100-20 + System.out.println("Subtraction sum: " + sum); + + sum = num * factor; // 100*20 + System.out.println("Multiplication sum: " + sum); + + sum = num / factor; // 100/20 + System.out.println("Division sum: " + sum); + } +} diff --git a/ch02/Assignment.java b/ch02/Assignment.java new file mode 100644 index 0000000..0c1c1b4 --- /dev/null +++ b/ch02/Assignment.java @@ -0,0 +1,25 @@ +//Exercise 2-ES-1. +//Exercise 5. + +public class Assignment +{ + public static void main (String[] args) + { + String txt = "Fantastic"; + String lang = "Java"; + txt += lang; //Assign concatenated String. + System.out.println("Add & Assign Strings: " + txt); + + int sum = 10; + int num = 20; + sum += num; //Assign result (10+20=30) + System.out.println("Add & Assign Integers: " + sum); + + int factor = 5; + sum *= factor; //Assign result (30*5=150) + System.out.println("Multiplication sum: " + sum); + + sum /= factor; //Assign result (150/5=30) + System.out.println("Division sum: " + sum); + } +} diff --git a/ch02/Constants.java b/ch02/Constants.java new file mode 100644 index 0000000..b972d78 --- /dev/null +++ b/ch02/Constants.java @@ -0,0 +1,27 @@ +//Exercise 2-ES-1. +//Exercise 3. + +public class Constants +{ + public static void main (String[] args) + { + //Constant score values. + final int TOUCHDOWN = 6; + final int CONVERSION = 1; + final int FIELDGOAL = 3; + + //Calculate points scored. + int td; + int pat; + int fg; + int total; + + td = 4 * TOUCHDOWN; + pat = 3 * CONVERSION; + fg = 2 * FIELDGOAL; + total = (td + pat + fg); + + //Output calculated total. + System.out.println("Score: " + total); + } +} diff --git a/ch02/DataTypes.java b/ch02/DataTypes.java new file mode 100644 index 0000000..705d5dd --- /dev/null +++ b/ch02/DataTypes.java @@ -0,0 +1,21 @@ +//Exercise 2-ES-1. +//Exercise 2. + +public class DataTypes +{ + public static void main (String[] args) + { + char letter = 'M'; + String title = "Java in Easy Steps"; + int number = 365; + float decimal = 98.6f; + boolean result = true; + + System.out.println("Initial is " + letter); + System.out.println("Book is " + title); + System.out.println("Days are " + number); + System.out.println("Temperature is " + decimal); + System.out.println("Answer is " + result); + + } +} diff --git a/ch02/Date.java b/ch02/Date.java new file mode 100644 index 0000000..b222604 --- /dev/null +++ b/ch02/Date.java @@ -0,0 +1,28 @@ +//Exercise 2-2. + +public class Date +{ + public static void main (String[] args) + { + String day = "Monday"; + int date = 16; + String month = "April"; + int year = 2018; + + System.out.println(day); + System.out.println(date); + System.out.println(month); + System.out.println(year); + + System.out.println(); + + System.out.println("American Format:"); + System.out.println(day + ", " + month + " " + date + ", " + year); + + System.out.println(); + + System.out.println("European Format:"); + System.out.println(day + " " + date + " " + month + " " + year); + + } +} diff --git a/ch02/DoubleByZero.java b/ch02/DoubleByZero.java new file mode 100644 index 0000000..5a9b7aa --- /dev/null +++ b/ch02/DoubleByZero.java @@ -0,0 +1,14 @@ +//Exercise 2-C. + +public class DoubleByZero +{ + public static void main (String[] args) + { + double var1 = 42.0; + double var2 = 0.0; + double result = (var1 / var2); + + System.out.println("The result is: " + result); + } +} +//The result is: Infinity \ No newline at end of file diff --git a/ch02/FirstVariable.java b/ch02/FirstVariable.java new file mode 100644 index 0000000..720b476 --- /dev/null +++ b/ch02/FirstVariable.java @@ -0,0 +1,14 @@ +//Exercise 2-ES-1. +//Exercise 1. + +public class FirstVariable +{ + public static void main (String[] args) + { + String message = "Initial value."; + System.out.println(message); + + message = "Modified value."; + System.out.println(message); + } +} diff --git a/ch02/IntByZero.java b/ch02/IntByZero.java new file mode 100644 index 0000000..f0dc7a0 --- /dev/null +++ b/ch02/IntByZero.java @@ -0,0 +1,16 @@ +//Exercise 2-B. + +public class IntByZero +{ + public static void main (String[] args) + { + int var1 = 42; +// int var2 = 0; + int var2 = 2; + int result = (var1 / var2); + + System.out.println("The result is: " + result); + } +} +// Exception in thread "main" java.lang.ArithmeticException: / by zero +// at IntByZero.main(IntByZero.java:7) \ No newline at end of file diff --git a/ch02/IntExtremes.java b/ch02/IntExtremes.java new file mode 100644 index 0000000..285f0c7 --- /dev/null +++ b/ch02/IntExtremes.java @@ -0,0 +1,19 @@ +//Exercise 2-A. + +public class IntExtremes +{ + public static void main (String[] args) + { + int positiveInt = 2147483647; + System.out.println(positiveInt); + positiveInt = positiveInt + 1; + System.out.println(positiveInt); + + System.out.println(); + + int negativeInt = -2147483648; + System.out.println(negativeInt); + negativeInt = negativeInt - 1; + System.out.println(negativeInt); + } +} diff --git a/ch02/LoveJava.java b/ch02/LoveJava.java new file mode 100644 index 0000000..abac822 --- /dev/null +++ b/ch02/LoveJava.java @@ -0,0 +1,16 @@ +//Exercise 2-E. + +public class LoveJava +{ + public static void main (String[] args) + { + System.out.println("I love Java!"); + + String word1 = "I"; + String word2 = "love"; + String word3 = "Java!"; + + System.out.println(word1 + " " + word2 + " " + word3); + + } +} diff --git a/ch02/Time.java b/ch02/Time.java new file mode 100644 index 0000000..4c1f7b3 --- /dev/null +++ b/ch02/Time.java @@ -0,0 +1,55 @@ +//Exercise 2-3. + +public class Time +{ + public static void main (String[] args) + { + int hour = 22; + int minute = 49; + int second = 45; + + final int NUMSECINDAY = 86400; + + System.out.print("The number of seconds since midnight is: "); + System.out.println((((hour * 60) + minute) * 60) + second); //82,185 + + System.out.println(); + + System.out.print("The number of seconds remaining in the day is: "); + System.out.println( NUMSECINDAY - ((((hour * 60) + minute) * 60) + second)); + + System.out.println(); + + double hour2 = 22.0; + double maxhr2 = 24.0; + System.out.println("Fraction of the day that has passed: "); + System.out.println(hour2 / maxhr2); + + System.out.println(); + + double oldhour = 22.0; + double oldmin = 49.0; + double oldsec = 45.0; + + double newhour = 23.0; + double newmin = 12.0; + double newsec = 35.0; + + double oldtime = ((((oldhour * 60) + oldmin) * 60) + oldsec); + double newtime = ((((newhour * 60) + newmin) * 60) + newsec); + double elapsedtime = newtime - oldtime; + + System.out.print("Elapsed time in seconds is: "); + System.out.println(elapsedtime); + + System.out.print("Elapsed time in minutes is: "); + System.out.println(elapsedtime / 60); + + System.out.print("Elapsed time in hours is: "); + System.out.println((elapsedtime / 60) / 60); + + + + + } +} diff --git a/ch02/Withdrawal.java b/ch02/Withdrawal.java new file mode 100644 index 0000000..85aebe5 --- /dev/null +++ b/ch02/Withdrawal.java @@ -0,0 +1,23 @@ +//Exercise 2-D. + +public class Withdrawal +{ + public static void main (String[] args) + { + int withdrawal = 2; + int var20 = withdrawal / 20; + int left20 = withdrawal % 20; + int var10 = left20 / 10; + int left10 = left20 % 10; + int var05 = left10 / 5; + int var01 = left10 % 5; + + System.out.println("The amount of the withdrawal is: " + withdrawal); + System.out.println("The number of $20s dispensed is: " + var20); +// System.out.println(left20); + System.out.println("The number of $10s dispensed is: " + var10); +// System.out.println(left10); + System.out.println("The number of $5s dispensed is: " + var05); + System.out.println("The number of $1s dispensed is: " + var01); + } +} From b868c0d000a9a3a0d58325d5078058dc56cd6b33 Mon Sep 17 00:00:00 2001 From: raedaniel36 Date: Wed, 18 Apr 2018 20:00:57 -0500 Subject: [PATCH 2/5] Exercises for Chapter 3. --- ch03/ConvertTemp.java | 25 +++++++++++++++++++++++++ ch03/ConvertTime.java | 34 ++++++++++++++++++++++++++++++++++ ch03/Escape.java | 17 +++++++++++++++++ ch03/GuessMyNumber.java | 29 +++++++++++++++++++++++++++++ 4 files changed, 105 insertions(+) create mode 100644 ch03/ConvertTemp.java create mode 100644 ch03/ConvertTime.java create mode 100644 ch03/Escape.java create mode 100644 ch03/GuessMyNumber.java diff --git a/ch03/ConvertTemp.java b/ch03/ConvertTemp.java new file mode 100644 index 0000000..3471738 --- /dev/null +++ b/ch03/ConvertTemp.java @@ -0,0 +1,25 @@ +//Exercise 3-2. + +import java.util.Scanner; + +public class ConvertTemp { + + public static void main(String[] args) + { + double tempCelsius; + double tempFahrenheit; + Scanner in = new Scanner(System.in); + + + // prompt the user and get the value + System.out.print("What is the Celsius temperature? "); + tempCelsius = in.nextDouble(); + + // convert and output the result + tempFahrenheit = ((tempCelsius * (9.0 / 5.0)) + 32.0); + System.out.println(tempCelsius); + System.out.println(tempFahrenheit); + System.out.printf("%.1f C = %.1f F\n", tempCelsius, tempFahrenheit); + } +} + diff --git a/ch03/ConvertTime.java b/ch03/ConvertTime.java new file mode 100644 index 0000000..6c2071d --- /dev/null +++ b/ch03/ConvertTime.java @@ -0,0 +1,34 @@ +//Exercise 3-3. + +import java.util.Scanner; + +public class ConvertTime +{ + public static void main(String[] args) + { + int inputSeconds; + + int numberHours; + int numberMinutes; + int numberSeconds; + + Scanner in = new Scanner(System.in); + + // prompt the user and get the value + System.out.print("What is the number of seconds? "); + inputSeconds = in.nextInt(); + + // convert and output the result + numberSeconds = inputSeconds % 60; + System.out.println(numberSeconds); + + numberMinutes = ((inputSeconds - numberSeconds) / 60) % 60; + System.out.println(numberMinutes); + + numberHours = ((inputSeconds - numberSeconds) / 60) / 60; + System.out.println(numberHours); + + System.out.println(inputSeconds + " seconds = " + numberHours + " hours, " + numberMinutes + " minutes, " + numberSeconds + " seconds"); + } +} + diff --git a/ch03/Escape.java b/ch03/Escape.java new file mode 100644 index 0000000..0fee943 --- /dev/null +++ b/ch03/Escape.java @@ -0,0 +1,17 @@ +//Exercise 3-ES-1 + +public class Escape +{ + public static void main( String[] args) + { + String header = "\n\tNEW YORK 3-DAY FORECAST:\n"; + header += "\n\tDay\t\t\tHigh\tLow\t\tConditions\n"; + header += "\t---\t\t\t----\t---\t\t----------\n"; + + String forecast = "\tSunday\t\t68F\t\t48F\t\tSunny\n"; + forecast += "\tMonday\t\t69F\t\t57F\t\tSunny\n"; + forecast += "\tTuesday\t\t71F\t\t50F\t\tCloudy\n"; + + System.out.print(header + forecast); + } +} diff --git a/ch03/GuessMyNumber.java b/ch03/GuessMyNumber.java new file mode 100644 index 0000000..9509a87 --- /dev/null +++ b/ch03/GuessMyNumber.java @@ -0,0 +1,29 @@ +//Exercise 3-4. + +import java.util.Random; +import java.util.Scanner; + +public class GuessMyNumber +{ + public static void main(String[] args) + { + // pick a random number + Random random = new Random(); + int number = random.nextInt(100) + 1; + // printing this so I can check the code + System.out.println(number); + + // prompt the user and get the value + int guess; + Scanner in = new Scanner(System.in); + + System.out.print("Choose a number: "); + guess = in.nextInt(); + int difference = number - guess; + System.out.println("You chose: " + guess); + System.out.println("The number I chose was: " + number); + System.out.println("You were off by: " + difference); + } + +} + From f210b486bf7124888bcb3ae295bbc8fa912d736f Mon Sep 17 00:00:00 2001 From: raedaniel36 Date: Wed, 18 Apr 2018 20:01:40 -0500 Subject: [PATCH 3/5] Chapter 2 Exercises. --- ch02/Time.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ch02/Time.java b/ch02/Time.java index 4c1f7b3..0ecb788 100644 --- a/ch02/Time.java +++ b/ch02/Time.java @@ -8,7 +8,7 @@ public static void main (String[] args) int minute = 49; int second = 45; - final int NUMSECINDAY = 86400; + final int NUM_SEC_IN_DAY = 86400; System.out.print("The number of seconds since midnight is: "); System.out.println((((hour * 60) + minute) * 60) + second); //82,185 @@ -16,7 +16,7 @@ public static void main (String[] args) System.out.println(); System.out.print("The number of seconds remaining in the day is: "); - System.out.println( NUMSECINDAY - ((((hour * 60) + minute) * 60) + second)); + System.out.println( NUM_SEC_IN_DAY - ((((hour * 60) + minute) * 60) + second)); System.out.println(); From 0f1d98da417f461a11883e94c35d9700887bb2be Mon Sep 17 00:00:00 2001 From: raedaniel36 Date: Wed, 18 Apr 2018 20:02:54 -0500 Subject: [PATCH 4/5] Exercises for Chapter 4. --- ch04/BegMethodSignature.java | 18 ++++++++++ ch04/DemoMath.java | 26 ++++++++++++++ ch04/Employee.java | 68 ++++++++++++++++++++++++++++++++++++ ch04/Exercise4_1.java | 38 ++++++++++++++++++++ ch04/MathUtil.java | 28 +++++++++++++++ ch04/PrintDates.java | 40 +++++++++++++++++++++ ch04/SimpleMethods.java | 31 ++++++++++++++++ 7 files changed, 249 insertions(+) create mode 100644 ch04/BegMethodSignature.java create mode 100644 ch04/DemoMath.java create mode 100644 ch04/Employee.java create mode 100644 ch04/Exercise4_1.java create mode 100644 ch04/MathUtil.java create mode 100644 ch04/PrintDates.java create mode 100644 ch04/SimpleMethods.java diff --git a/ch04/BegMethodSignature.java b/ch04/BegMethodSignature.java new file mode 100644 index 0000000..1083679 --- /dev/null +++ b/ch04/BegMethodSignature.java @@ -0,0 +1,18 @@ +//Exercise 4-G. + +public class BegMethodSignature +{ + public static void main(String[] args) + { + printSum(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); + printSum(5, 5, 5, 5, 5, 5, 5, 5, 5, 5); + } + + private static void printSum(int a, int b, int c, int d, int e, int f, int g, int h, int i, int j) + { + int sum = a + b + c + d + e + f + g + h + i + j; + System.out.println("The values of a through j are: " + a + ", " + b + ", " + c + ", " + d + ", " + e + ", " + f + ", " + g + ", " + h + ", " + i + ", " + j); + System.out.println("This sum of a through j is: " + sum); + System.out.println(); + } +} diff --git a/ch04/DemoMath.java b/ch04/DemoMath.java new file mode 100644 index 0000000..85a9d1f --- /dev/null +++ b/ch04/DemoMath.java @@ -0,0 +1,26 @@ +//Exercise 4-E. + +public class DemoMath +{ + public static void main(String[] args) + { + int a = -4; + int b = 5; + + System.out.println("The value of a is: " + a); + System.out.println("The absolute value of a is: " + Math.abs(a)); + System.out.println(); + + System.out.println("The value of a is: " + a); + System.out.println("The value of b is: " + b); + System.out.println("The max value of a and b is: " + Math.max(a, b)); + System.out.println(); + + double c = 6.0; + System.out.println("The value of c is: " + c); + System.out.println("The value of c to the power of c is: " + Math.pow(c, c)); + System.out.println(); + + System.out.println("The valued of PI is: " + Math.PI); + } +} diff --git a/ch04/Employee.java b/ch04/Employee.java new file mode 100644 index 0000000..c6e40b1 --- /dev/null +++ b/ch04/Employee.java @@ -0,0 +1,68 @@ +//Exercise 4-H. + +import java.util.Scanner; +import java.util.Random; + +public class Employee +{ + public static void main(String[] args) + { + int birthYear = 1995; + boolean isUnionMember = false; + String firstName = "Robin"; + String middleName = "Ann"; + String lastName = "Daniel"; + int employeeNumber; + + printHeader(); + + Scanner in = new Scanner(System.in); + System.out.println("Please enter your 5 digit employee number: "); + employeeNumber = in.nextInt(); + + printFullName(lastName, firstName, middleName); + printUnionStatus(isUnionMember); + printAge(birthYear); + printEvenOrOdd(employeeNumber); + printGenerateSecretPassword(employeeNumber); + } + + private static void printHeader() + { + String header = "Welcome to the WallabyTech Employee Application\n"; + header += "-----------------------------------------------\n"; + System.out.print(header); + } + + private static void printFullName(String ln, String fn, String mn) + { + System.out.println(ln + ", " + fn + " " + mn); + } + + private static void printUnionStatus(boolean s) + { + System.out.println("Your union status is: " + s); + } + + private static void printAge(int a) + { + final int CURRENT_YEAR = 2018; + int age = CURRENT_YEAR - a; + System.out.println("Your age is: " + age); + } + + private static void printEvenOrOdd(int n) + { + int typeOfNumber = (n % 2); + System.out.println("Employee Number is even (0) or odd (1): " + typeOfNumber); + } + + private static void printGenerateSecretPassword(int n) + { + Random random = new Random(); + int number = random.nextInt(10) + 1; + int password = ((n + number) * 5); +// System.out.println(number); //Did this to check the computation. + System.out.println("Employee's random secret ps is: " + password); + } +} diff --git a/ch04/Exercise4_1.java b/ch04/Exercise4_1.java new file mode 100644 index 0000000..898bcc9 --- /dev/null +++ b/ch04/Exercise4_1.java @@ -0,0 +1,38 @@ +//Exercise 4-1. + +public class Exercise4_1 +{ + public static void zoop() + { + baffle(); + System.out.print("You wugga "); + baffle(); + } + + public static void main(String[] args) + { + System.out.print("No, I "); + zoop(); + System.out.print("I "); + baffle(); + } + + public static void baffle() + { + System.out.print("wug"); + ping(); + } + + public static void ping() + { + System.out.println("."); +// baffle(); <= Causes an endless loop. + } +} +//No, I wug. (new line) +//You wugga wug. (new line) +//I wug. + +//invoke baffle() at the end of ping() +//No, I wug. +//wug. Endless loop of "wug." \ No newline at end of file diff --git a/ch04/MathUtil.java b/ch04/MathUtil.java new file mode 100644 index 0000000..4b49c6d --- /dev/null +++ b/ch04/MathUtil.java @@ -0,0 +1,28 @@ +//Exercise 4-F. + +public class MathUtil +{ + public static void main(String[] args) + { + printDifference(-4, 5); + printAbsValue(-45); + printDifference(1000, 4000000); + } + + private static void printDifference(int a, int b) + { + int difference = a - b; + System.out.println("The values of a and b are: " + a + " and " + b); + System.out.println("This difference between a and b is: " + difference); + System.out.println(); + printAbsValue(difference); + } + + private static void printAbsValue(int c) + { + int absoluteValue = Math.abs(c); + System.out.println("The value of c is: " + c); + System.out.println("The absolute value of c is: " + absoluteValue); + System.out.println(); + } +} diff --git a/ch04/PrintDates.java b/ch04/PrintDates.java new file mode 100644 index 0000000..59f3591 --- /dev/null +++ b/ch04/PrintDates.java @@ -0,0 +1,40 @@ +//Exercise 4-3. + +public class PrintDates +{ + public static void main(String[] args) + { + String day = "Wednesday"; + int date = 18; + String month = "April"; + int year = 2018; + + printAmerican(day, date, month, year); + System.out.println(); + printEuropean(day, date, month, year); + } + + public static void printAmerican(String day, int date, String month, int year) + { + System.out.println("American format:"); + System.out.print(day); + System.out.print(", "); + System.out.print(month); + System.out.print(" "); + System.out.print(date); + System.out.print(", "); + System.out.println(year); + } + + public static void printEuropean(String day, int date, String month, int year) + { + System.out.println("European format:"); + System.out.print(day); + System.out.print(" "); + System.out.print(date); + System.out.print(" "); + System.out.print(month); + System.out.print(" "); + System.out.println(year); + } +} diff --git a/ch04/SimpleMethods.java b/ch04/SimpleMethods.java new file mode 100644 index 0000000..e4d8126 --- /dev/null +++ b/ch04/SimpleMethods.java @@ -0,0 +1,31 @@ +// Exercise 4-A. + +public class SimpleMethods +{ + public static void main(String[] args) + { + printCount(5); + printSum(4, 6); + printSum(7, 2); + printBoolean(true); + printBoolean(false); + } + + private static void printCount(int count) + { + System.out.println("This count is: " + count); + } + + private static void printSum(int x, int y) + { + int z = x + y; + System.out.println(x + " + " + y + " = " + z); + } + + private static void printBoolean(boolean isRich) + { + System.out.println("I am rich: " + isRich); + } +} + + From 8c207fea6e049e1381fbe073dc3f96a6e358d907 Mon Sep 17 00:00:00 2001 From: raedaniel36 Date: Thu, 19 Apr 2018 21:01:46 -0500 Subject: [PATCH 5/5] Chapter 5 Exercises. --- ch05/Comparison.java | 28 ++++++++ ch05/Condition.java | 20 ++++++ ch05/CrazyEdWholesaleCheese.java | 101 +++++++++++++++++++++++++++ ch05/Else.java | 24 +++++++ ch05/EmailOffer.java | 29 ++++++++ ch05/GreenCoffeeGrowersDiscount.java | 33 +++++++++ ch05/If.java | 29 ++++++++ ch05/Logic.java | 28 ++++++++ ch05/LogicMethods.java | 86 +++++++++++++++++++++++ ch05/Precedence.java | 17 +++++ ch05/Switch.java | 20 ++++++ ch05/SwitchExample.java | 69 ++++++++++++++++++ ch05/TicketNumber.java | 32 +++++++++ 13 files changed, 516 insertions(+) create mode 100644 ch05/Comparison.java create mode 100644 ch05/Condition.java create mode 100644 ch05/CrazyEdWholesaleCheese.java create mode 100644 ch05/Else.java create mode 100644 ch05/EmailOffer.java create mode 100644 ch05/GreenCoffeeGrowersDiscount.java create mode 100644 ch05/If.java create mode 100644 ch05/Logic.java create mode 100644 ch05/LogicMethods.java create mode 100644 ch05/Precedence.java create mode 100644 ch05/Switch.java create mode 100644 ch05/SwitchExample.java create mode 100644 ch05/TicketNumber.java diff --git a/ch05/Comparison.java b/ch05/Comparison.java new file mode 100644 index 0000000..b85eaff --- /dev/null +++ b/ch05/Comparison.java @@ -0,0 +1,28 @@ +// Exercise 5-ES-1 +// Exercise 1 + +public class Comparison +{ + public static void main(String[] args) + { + String txt = "Fantastic"; + String lang = "Java"; + + boolean state = (txt == lang); + System.out.println("String Equality Test: " + state); + + state = (txt != lang); + System.out.println("String Inequality Test: " + state); + + System.out.println(); + + int dozen = 12; + int score = 10; + + state = (dozen > score); + System.out.println("Greater Than Test: " + state); + + state = (dozen < score); + System.out.println("Less Than Test: " + state); + } +} diff --git a/ch05/Condition.java b/ch05/Condition.java new file mode 100644 index 0000000..e05b920 --- /dev/null +++ b/ch05/Condition.java @@ -0,0 +1,20 @@ +// Exercise 5-ES-1 +// Exercise 3 + +public class Condition +{ + public static void main(String[] args) + { + int num1 = 1357; + int num2 = 2468; + String result; + + result = (num1 % 2 != 0) ? "Odd" : "Even"; + System.out.println( num1 + " is " + result); + + System.out.println(); + + result = (num2 % 2 != 0) ? "Odd" : "Even"; + System.out.println( num2 + " is " + result); + } +} diff --git a/ch05/CrazyEdWholesaleCheese.java b/ch05/CrazyEdWholesaleCheese.java new file mode 100644 index 0000000..8d5903c --- /dev/null +++ b/ch05/CrazyEdWholesaleCheese.java @@ -0,0 +1,101 @@ +//Exercise 5-G. + +import java.util.Scanner; + +public class CrazyEdWholesaleCheese +{ + public static void main(String[] args) + { + Scanner in = new Scanner(System.in); + + System.out.print("What size cheese would you like to order? "); + int cheeseSize = in.nextInt(); + switch(cheeseSize) + { + case 1 : case 2 : case 3 : + System.out.println("You chose: " + cheeseSize + " inch diameter string cheese."); + break; + + default : + System.out.println("Please choose 1, 2, or 3 inch diameter string cheese."); + return; + } + + System.out.println("What length of cheese would you like to order? "); + int cheeseLength = in.nextInt(); + + determineCostOfOrder(cheeseSize, cheeseLength); + } + + public static void determineCostOfOrder(int cheeseSize, int cheeseLength) + { + final int COST_OF_1_INCH_CHEESE = 2; + final int COST_OF_2_INCH_CHEESE = 4; + final int COST_OF_3_INCH_CHEESE = 6; + + final int SHIPPING_COST_OF_1_INCH_CHEESE = 2; + final int SHIPPING_COST_OF_2_INCH_CHEESE = 2; + final int SHIPPING_COST_OF_3_INCH_CHEESE = 4; + + final int FREE_SHIPPING_BREAKPOINT_FOR_1_INCH_CHEESE = 50; + final int FREE_SHIPPING_BREAKPOINT_FOR_2_INCH_CHEESE = 75; + final int FREE_SHIPPING_BREAKPOINT_FOR_3_INCH_CHEESE = 25; + + final int HANDLING_CHARGE = 5; + + int cheeseCost = 0; + int shippingCost = 0; + + boolean isValidOrder = true; + + if ((cheeseSize == 1) && (cheeseLength > FREE_SHIPPING_BREAKPOINT_FOR_1_INCH_CHEESE)) + { + cheeseCost = (cheeseLength * COST_OF_1_INCH_CHEESE); + shippingCost = 0; + } + else if (cheeseSize == 1) + { + cheeseCost = (cheeseLength * COST_OF_1_INCH_CHEESE); + shippingCost = (cheeseLength * SHIPPING_COST_OF_1_INCH_CHEESE); + } + else if ((cheeseSize == 2) && (cheeseLength > FREE_SHIPPING_BREAKPOINT_FOR_2_INCH_CHEESE)) + { + cheeseCost = (cheeseLength * COST_OF_2_INCH_CHEESE); + shippingCost = 0; + } + else if (cheeseSize == 2) + { + cheeseCost = (cheeseLength * COST_OF_2_INCH_CHEESE); + shippingCost = (cheeseLength * SHIPPING_COST_OF_2_INCH_CHEESE); + } + else if ((cheeseSize == 3) && (cheeseLength > FREE_SHIPPING_BREAKPOINT_FOR_3_INCH_CHEESE)) + { + cheeseCost = (cheeseLength * COST_OF_3_INCH_CHEESE); + shippingCost = 0; + } + else if (cheeseSize == 3) + { + cheeseCost = (cheeseLength * COST_OF_3_INCH_CHEESE); + shippingCost = (cheeseLength * SHIPPING_COST_OF_3_INCH_CHEESE); + } + else + { + isValidOrder = false; + } + + int totalCost = cheeseCost + shippingCost + HANDLING_CHARGE; + + if (isValidOrder) + { + System.out.println("The total cost of this cheese is: $" + cheeseCost); + System.out.println("The total shipping cost is: $" + shippingCost); + System.out.println("The Handling Charge for this order is: $" + HANDLING_CHARGE); + System.out.println("The total cost of this order is: $" + totalCost); + System.out.println(); + } + else + { + System.out.println("This order is too crazy!"); + } + } + } diff --git a/ch05/Else.java b/ch05/Else.java new file mode 100644 index 0000000..a5c042b --- /dev/null +++ b/ch05/Else.java @@ -0,0 +1,24 @@ +// Exercise 5-ES-1 +// Exercise 6 + +public class Else +{ + public static void main(String[] args) + { + int hrs = 21; + + if (hrs < 13) + { + System.out.println("Good morning: " + hrs); + } + else if (hrs < 18) + { + System.out.println("Good afternoon: " + hrs); + } + else + { + System.out.println("Good evening: " + hrs); + } + + } +} diff --git a/ch05/EmailOffer.java b/ch05/EmailOffer.java new file mode 100644 index 0000000..533f8c7 --- /dev/null +++ b/ch05/EmailOffer.java @@ -0,0 +1,29 @@ +//Exercise 5-J. + +public class EmailOffer +{ + public static void main(String[] args) + { + determineEmailOffer("IA", 10); + } + + public static void determineEmailOffer(String state, int currentSpeed) + { + if ((state.equals("IA")) && (currentSpeed < 30)) + { + System.out.println("Congratulations! You are eligible for a free HSI upgrade to 50M."); + } + else if ((state.equals("MO")) && (currentSpeed < 10)) + { + System.out.println("Congratulations! You are eligible for a free HSI upgrade to 20M."); + } + else if ((state.equals("MO")) && (currentSpeed < 25)) + { + System.out.println("Congratulations! You are eligible for a free HSI upgrade to 50M."); + } + else + { + System.out.println("We are sorry. No HSI Upgrade is available at this time."); + } + } +} diff --git a/ch05/GreenCoffeeGrowersDiscount.java b/ch05/GreenCoffeeGrowersDiscount.java new file mode 100644 index 0000000..9efd010 --- /dev/null +++ b/ch05/GreenCoffeeGrowersDiscount.java @@ -0,0 +1,33 @@ +//Exercise 5-I. + +public class GreenCoffeeGrowersDiscount +{ + public static void main(String[] args) + { + determineDiscount("Bicycle", 50); + } + + public static void determineDiscount(String modeOfTravel, int distanceOfCommute) + { + if (distanceOfCommute < 21) + { + System.out.println("Congratulations! You are eligible for a Free Coffee and a 30% Discount."); + } + else if ((modeOfTravel.equals("Bicycle")) && (distanceOfCommute > 20 && distanceOfCommute < 30)) + { + System.out.println("Congratulations! You are eligible for a 30% Discount."); + } + else if ((modeOfTravel.equals("Bicycle")) && (distanceOfCommute > 29 && distanceOfCommute < 50)) + { + System.out.println("Congratulations! You are eligible for a 20% Discount."); + } + else if ((modeOfTravel.equals("Bus")) && (distanceOfCommute > 34 && distanceOfCommute < 50)) + { + System.out.println("Congratulations! You are eligible for a 50% Discount."); + } + else + { + System.out.println("We are sorry. You are not eligible for a discount at this time."); + } + } +} diff --git a/ch05/If.java b/ch05/If.java new file mode 100644 index 0000000..a97aa44 --- /dev/null +++ b/ch05/If.java @@ -0,0 +1,29 @@ +// Exercise 5-ES-1 +// Exercise 5 + +public class If +{ + public static void main(String[] args) + { + if (5>1) + { + System.out.println("Five is greater than one."); + } + + System.out.println(); + + if (2<4) + { + System.out.println("Two is less than four."); + System.out.println("Test succeeded."); + } + + System.out.println(); + + int num = 15; + if (((num > 5) && (num < 10)) || (num == 12)) + { + System.out.println("Number is 6-9 inclusive, or 12"); + } + } +} diff --git a/ch05/Logic.java b/ch05/Logic.java new file mode 100644 index 0000000..17dac89 --- /dev/null +++ b/ch05/Logic.java @@ -0,0 +1,28 @@ +// Exercise 5-ES-1 +// Exercise 2 + +public class Logic +{ + public static void main(String[] args) + { + boolean yes = true; + boolean no = false; + + //Add these lines to test if both conditions are true. + System.out.println("Both YesYes True: " + ( yes && yes)); + System.out.println("Both YesNo True: " + ( yes && no)); + + System.out.println(); + + //Add these lines to test if either condition is true. + System.out.println("Either YesYes True: " + ( yes || yes)); + System.out.println("Either YesNo True: " + ( yes || no)); + System.out.println("Either NoNo True: " + ( no || no)); + + System.out.println(); + + //Add two more lines to show an original and inverse value. + System.out.println("Original Yes Value: " + ( yes )); + System.out.println("Inverse Yes Value: " + ( !yes )); + } +} diff --git a/ch05/LogicMethods.java b/ch05/LogicMethods.java new file mode 100644 index 0000000..dd29251 --- /dev/null +++ b/ch05/LogicMethods.java @@ -0,0 +1,86 @@ +//Exercises 5-A through 5-D. + +public class LogicMethods +{ + public static void main(String[] args) + { + //Exercise 5-A. + printIsLarge(4); + //Exercise 5-B. + printIsLargeOrSmall(47); + //Exercise 5-C. + printLargest(25, 9); + //Exercise 5-D + printLargestOdd(12, 12); + } + + public static void printIsLarge(int number) + { + if (number > 99) + { + System.out.println("The number is large."); + } + } + + public static void printIsLargeOrSmall(int number) + { + if (number > 99) + { + System.out.println("The number is large."); + } + else if (number < 10) + { + System.out.println("The number is small."); + } + } + + public static void printLargest(int number1, int number2) + { + if (number1 == number2) + { + System.out.println("The numbers are equal."); + } + else if (number1 > number2) + { + System.out.println("The largest number is: " + number1); + } + else + { + System.out.println("The largest number is: " + number2); + } + } + + public static void printLargestOdd(int x, int y) + { + boolean xIsOdd = (x % 2 == 1); + boolean xIsEven = (x % 2 == 0); + boolean yIsOdd = (y % 2 == 1); + boolean yIsEven = (y % 2 == 0); + + if ((xIsEven) && (yIsEven)) + { + System.out.println("Neither number is ODD."); + } + else if ((xIsEven) && (yIsOdd)) + { + System.out.println("The largest ODD number is: " + y); + } + else if ((xIsOdd) && (yIsEven)) + { + System.out.println("The largest ODD number is: " + x); + } + else if ((x == y) && (xIsOdd)) + { + System.out.println("Two ODDs make an EVEN: " + (x + y)); + } + else if (x > y) + { + System.out.println("The largest ODD number is: " + x); + } + else if (y > x) + { + System.out.println("The largest ODD number is: " + y); + } + } +} + diff --git a/ch05/Precedence.java b/ch05/Precedence.java new file mode 100644 index 0000000..4c19006 --- /dev/null +++ b/ch05/Precedence.java @@ -0,0 +1,17 @@ +// Exercise 5-ES-1 +// Exercise 4 + +public class Precedence +{ + public static void main(String[] args) + { + int sum = 32 - 8 + 16 * 2; + System.out.println("Default order: " + sum); + + sum = (32 - 8 + 16) * 2; + System.out.println("Specified order: " + sum); + + sum = (32 - (8 + 16)) * 2; + System.out.println("Nested specific order: " + sum); + } +} diff --git a/ch05/Switch.java b/ch05/Switch.java new file mode 100644 index 0000000..3651cb4 --- /dev/null +++ b/ch05/Switch.java @@ -0,0 +1,20 @@ +// Exercise 5-ES-1 +// Exercise 7 + +public class Switch +{ + public static void main(String[] args) + { + int month = 2; + int year = 2018; + int num = 31; + + switch(month) + { + case 4 : case 6: case 9: case 11 : num = 30; break; + case 2 : num = (year % 4 == 0) ? 29 : 28; break; + } + + System.out.println(month + "/" + year + ":" + num + "days"); + } +} diff --git a/ch05/SwitchExample.java b/ch05/SwitchExample.java new file mode 100644 index 0000000..d8df890 --- /dev/null +++ b/ch05/SwitchExample.java @@ -0,0 +1,69 @@ +//Exercise 5-E. +//Exercise 5-F. + +public class SwitchExample +{ + public static void main(String[] args) + { + lastNameWinner("Lazenby"); + System.out.println(); + dayOfWeek(7); + } + + public static void lastNameWinner(String name) + { + switch(name) + { + case "Smith" : case "Jones" : + System.out.println("Congratulations, Grand Winner."); + break; + + case "Lazenby" : + System.out.println("Hey, he owes me dinner!"); + break; + + default: + System.out.println("Sorry, you are not a winner."); + } + } + + + + public static void dayOfWeek(int day) + { + switch(day) + { + case 1 : + System.out.println("Sunday"); + break; + + case 2 : + System.out.println("Monday"); + break; + + case 3 : + System.out.println("Tuesday"); + break; + + case 4 : + System.out.println("Wednesday"); + break; + + case 5 : + System.out.println("Thursday"); + break; + + case 6 : + System.out.println("Friday"); + break; + + case 7 : + System.out.println("Saturday"); + break; + + default: + System.out.println("Invalid entry: " + day); + } + } + +} diff --git a/ch05/TicketNumber.java b/ch05/TicketNumber.java new file mode 100644 index 0000000..d350725 --- /dev/null +++ b/ch05/TicketNumber.java @@ -0,0 +1,32 @@ +//Exercise 5-H. + +import java.util.Scanner; + +public class TicketNumber +{ + public static void main(String[] args) + { + Scanner in = new Scanner(System.in); + int ticketNumber; + + System.out.print("What is the Ticket Number? "); + ticketNumber = in.nextInt(); + System.out.println("This is the Ticket Number you entered: " + ticketNumber); + + int ticketPrefix = ticketNumber / 10; + int lastDigit = ticketNumber % 10; + + System.out.println("The Ticket Prefix is: " + ticketPrefix); + System.out.println("The last digit of the Ticket is: " + lastDigit); + + boolean isValid = ((ticketPrefix % 7) == lastDigit); + if (isValid) + { + System.out.println("This is a good number."); + } + else + { + System.out.println("This is a bad number."); + } + } +}