728x90
반응형
코드잇 소개 프로그램
키보드 입력으로 탐색할 수 있는 코드잇 소개 프로그램을 만듭니다.
메인 메뉴 (Main Menu)
아래와 같은 메뉴가 출력됩니다.
(I)ntro (C)ourses (E)xit
"I", "i", "C", "c", "E", "e"를 입력하면 해당되는 메뉴로 이동합니다.
(E)xit
"E" 또는 "e"를 입력하면, 아래의 메시지를 출력하고 프로그램을 끝냅니다.
콘솔 예시
(I)ntro (C)ourses (E)xit
E
안녕히 가세요.
(I)ntro
"I" 또는 "i"를 입력하면, 아래의 메시지를 출력하고 MainMenu로 돌아갑니다.
안녕하세요! 우리는 코드잇입니다.
함께 공부합시다!
콘솔 예시
(I)ntro (C)ourses (E)xit
I
안녕하세요! 우리는 코드잇입니다.
함께 공부합시다!
(I)ntro (C)ourses (E)xit
(C)ourses
"C" 또는 "c"를 입력하면, 수업 소개 메뉴로 넘어갑니다. 수업 소개 메뉴는 일단 아래의 메뉴를 출력합니다:
코드잇 수업을 소개합니다.
(P)ython (J)ava (i)OS (B)ack
여기서:
(1) "P" 또는 "p"를 입력하면, 아래의 소개를 하고 수업 소개 메뉴로 돌아갑니다.
Python 언어를 통해 컴퓨터 사이언스의 기초를 배웁니다.
강사: 강영훈
추천 선수과목: 없음
(2) "J" 또는 "j"를 입력하면, 아래의 소개를 하고 수업 소개 메뉴로 돌아갑니다.
Java의 기본 문법과 객체지향적 프로그래밍을 배웁니다.
강사: 김신의
추천 선수과목: Python
(3) "i" 또는 "I"를 입력하면, 아래의 소개를 하고 수업 소개 메뉴로 돌아갑니다.
최신 Swift 언어를 통해 iOS 개발을 시작할 수 있습니다.
강사: 성태호
추천 선수과목: Python, Java
(4) "B" 또는 "b"를 입력하면 메인 메뉴로 돌아갑니다.
콘솔 예시
(I)ntro (C)ourses (E)xit
c
코드잇 수업을 소개합니다.
(P)ython (J)ava (i)OS (B)ack
j
Java의 기본 문법과 객체지향적 프로그래밍을 배웁니다.
강사: 김신의
추천 선수과목: Python
코드잇 수업을 소개합니다.
(P)ython (J)ava (i)OS (B)ack
i
최신 Swift 언어를 통해 iOS 개발을 시작할 수 있습니다.
강사: 성태호
추천 선수과목: Python, Java
코드잇 수업을 소개합니다.
(P)ython (J)ava (i)OS (B)ack
B
(I)ntro (C)ourses (E)xit
e
안녕히 가세요.
해설 코드
import java.util.Scanner;
public class Practice {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean inMainMenu = true;
while(inMainMenu) {
System.out.println("(I)ntro (C)ourses (E)xit");
switch(scanner.next()) {
case "I":
case "i":
System.out.println("안녕하세요! 우리는 코드잇입니다. \n" + "함께 공부합시다!");
break;
case "C":
case "c":
boolean inCourseMenu = true;
while(inCourseMenu) {
System.out.println("코드잇 수업을 소개합니다.\n" + "(P)ython (J)ava (i)OS (B)ack");
switch(scanner.next()) {
case "P":
case "p":
System.out.println("Python 언어를 통해 컴퓨터 사이언스의 기초를 배웁니다.");
System.out.println("강사: 강영훈");
System.out.println("추천 선수과목: 없음");
break;
case "J":
case "j":
System.out.println("Java의 기본 문법과 객체지향적 프로그래밍을 배웁니다.");
System.out.println("강사: 김신의");
System.out.println("추천 선수과목: Python");
break;
case "I":
case "i":
System.out.println("최신 Swift 언어를 통해 iOS 개발을 시작할 수 있습니다.");
System.out.println("강사: 성태호");
System.out.println("추천 선수과목: Python, Java");
break;
case "B":
case "b":
inCourseMenu = false;
break;
default:
System.out.println("다시 입력해 주세요.");
break;
}
}
break;
case "E":
case "e":
System.out.println("안녕히 가세요.");
// 반복문을 종료하기 위해 inMainMenu를 false로 변경
inMainMenu = false;
break;
default:
System.out.println("다시 입력해 주세요.");
break;
}
}
}
}
본인 작성 코드
import java.util.Scanner;
public class Sanner {
public static void main(String[] args) {
System.out.println("(I)ntro (C)ourses (E)xit");
String menu;
Scanner scanner = new Scanner(System.in);
menu = scanner.next();
while(!menu.equals("E") && !menu.equals("e")) {
switch (menu) {
case "E":
case "e":
System.out.println("안녕히 가세요.");
break;
case "I":
case "i":
System.out.println("안녕하세요! 우리는 코드잇입니다.\n" + "함께 공부합시다!");
break;
case "C":
case "c":
System.out.println("코드잇 수업을 소개합니다.\n" + "(P)ython (J)ava (i)OS (B)ack");
do {
menu = scanner.next();
switch (menu) {
case "P":
case "p":
System.out.println("Python 언어를 통해 컴퓨터 사이언스의 기초를 배웁니다.\n" + "강사: 강영훈\n" + "추천 선수과목: 없음\n" + "(P)ython (J)ava (i)OS (B)ack");
break;
case "J":
case "j":
System.out.println("Java의 기본 문법과 객체지향적 프로그래밍을 배웁니다.\n" + "강사: 김신의\n" + "추천 선수과목: Python\n" + "(P)ython (J)ava (i)OS (B)ack");
break;
case "I":
case "i":
System.out.println("최신 Swift 언어를 통해 iOS 개발을 시작할 수 있습니다.\n" + "강사: 성태호\n" + "추천 선수과목: Python, Java\n" + "(P)ython (J)ava (i)OS (B)ack");
break;
case "B":
case "b":
break;
}
}while(!menu.equals("B") && !menu.equals("b"));
break;
default:
System.out.println("(I)ntro (C)ourses (E)xit");
continue;
}
System.out.println("(I)ntro (C)ourses (E)xit");
menu = scanner.next();
}
System.out.println("안녕히가세요.");
}
}
728x90
반응형
'TIL > Java' 카테고리의 다른 글
[Java] null (0) | 2022.01.07 |
---|---|
[Java] 기본형 vs 참조형 (0) | 2022.01.07 |
[Java] 콘솔 입력 받기(Scanner) (0) | 2022.01.07 |
[Java] 중간고사: 문제 해결 능력 기르기_플로이드의 삼각형 (0) | 2022.01.06 |
[Java] 중간고사: 문제 해결 능력 기르기_피라미드 그리기 (0) | 2022.01.05 |