/** * */ package com.github.cbpos1989.codingChallenge; /** * App made as part of coding test on the course. Create a menu that allows user to enter name and age as well as print those details. * Also creating a array of number 1..20 then calculating the total. * * @author Colm O'Sullivan * */ import java.util.Scanner; public class ExamApp{ String nameInput = "J Doe"; int age = 18; int totalArray = 0; private Scanner scan; public static void main(String[] args){ //System.out.println("Working"); ExamApp myExamApp = new ExamApp(); myExamApp.showMenu(); } void showMenu(){ boolean closeMenu = false; scan = new Scanner(System.in); do{ System.out.println("\n1)Enter a name and age\n2)Print a name and age\n3)Calculate Total\n4)Quit"); System.out.print("Enter Your Choice: "); String userInput = scan.nextLine(); switch(userInput){ case "1": setName(); setAge(); break; case "2": System.out.println(""); System.out.println("Name: " + getName() + "\nAge: " + getAge()); break; case "3": createArray(); System.out.println("The Total of Your Array is " + getArrayTotal()); break; case "4": closeMenu = true; break; default: System.out.println("\n!!!Invalid Entry!!!"); } } while(closeMenu == false); } void setName(){ scan = new Scanner(System.in); System.out.print("\nEnter Your Name: "); nameInput = scan.nextLine(); } String getName(){ return nameInput; } void setAge(){ boolean validInput = false; int invalidCount = 0; scan = new Scanner(System.in); do{ System.out.print("Enter Your Age: "); String ageInput = scan.nextLine(); try{ age = Integer.parseInt(ageInput); validInput = true; } catch(NumberFormatException nfe) { System.out.println("!!!Invalid Entry!!!"); invalidCount++; } } while(validInput == false && invalidCount < 10); } int getAge(){ return age; } void createArray(){ System.out.println("\n---Creating Array of Numbers---"); int[] numArray = new int[20]; for(int i = 0; i < 20; ++i){ numArray[i] = i; System.out.print(numArray[i] + " "); totalArray += numArray[i]; } } int getArrayTotal(){ return totalArray; } }