잘못된 부분이 있다면 댓글남겨주시면 반영하겠습니다.
문제 1) 아래의 메뉴를 보여주고, 선택한 메뉴를 알려주는 프로그램 작성
출력예) 1. 삽입
2. 수정
3. 삭제
입력예) 숫자를 선택하세요. : 2
출력예) 수정을 선택하셨습니다.
package sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
System.out.println("1. 삽입");
System.out.println("2. 수정");
System.out.println("3. 삭제");
System.out.print("숫자를 선택하세요. : ");
int a = scn.nextInt();
String b = "";
String c = "%s 선택하셨습니다.";
switch(a)
{
case 1 :
b = "삽입을";
break;
case 2 :
b = "수정을";
break;
case 3 :
b = "삭제를";
break;
default :
c = "입력값이 잘못되었습니다.";
}
System.out.printf(c, b);
}
}
문제 2) 영문 대문자를 입력받아 'A'이면 "훌륭합니다.", 'B'이면 "좋습니다.", 'C'이면 "보통입니다.", 'D'이면 "노력하세요.", 그이외문자는 "잘못입력하셨습니다."라고 출력하는 프로그램
입력예) B
출력예) 좋습니다.
package Sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
String d = scn.next();
String c = "";
char b = d.charAt(0);
int a = d.length();
if(a==1)
{
switch(b)
{
case 'A' :
c = "훌륭합니다.";
break;
case 'B' :
c = "좋습니다.";
break;
case 'C' :
c = "보통입니다.";
break;
case 'D' :
c = "노력하세요.";
break;
default :
c = "잘못입력하셨습니다.";
}
}
else
{
c = "한글자만 입력하세요.";
}
System.out.print(c);
}
}
* 여기서 a, b 변수 선언에 유의해야합니다.
char b = scn.next().charAt(0);
int a = scn.next().length();
이렇게 표현할 수도 있지 않을까 싶겠지만, 이 코드는 전혀 다른 의미를 가지고 있습니다.
이것은 a, b 변수에 각각 입력값 한개씩 총 두개의 입력값을 받는다는 의미입니다.
위의 전체코드에서 볼 때, 하나의 입력값으로부터 a, b 변수를 도출해내는 것이 원하는 방향이기때문에
d 변수를 활용하여 다음과 같이 선언해야합니다.
char b = d.charAt(0);
int a = d.length();
문제 3) 점수를 입력 받아 "수우미양가"를 평가하는 프로그램
입력예) 점수를 입력하세요. : 92
출력예) 수
package Sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
System.out.print("점수를 입력하세요. : ");
int score = scn.nextInt();
String grade = "가";
if(score>=0 && score<=100)
{
switch(score/10)
{
case 10 :
case 9 :
grade = "수";
break;
case 8 :
grade = "우";
break;
case 7 :
grade = "미";
break;
case 6 :
grade = "양";
}
}
else
{
grade = "점수값이 잘못되었습니다.";
}
System.out.print(grade);
}
}
문제 4) 현재 월을 입력 받아 입력받은 월에 해당하는 계절을 출력하는 프로그램
3~5월 "현재 계절을 봄입니다."
6~8월 "현재 계절은 여름입니다."
9~11월 "현재 계절은 가을입니다."
12월~2월 "현재 계절은 겨울입니다."
입력예) 현재 월을 입력하세요. : 3
출력예) 현재 계절은 봄입니다.
package Sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
System.out.print("현재 월을 입력하세요. : ");
int month = scn.nextInt();
String season = "겨울";
String a = "현재 계절은 %s입니다.";
if(month>0 && month<13)
{
switch(month/3)
{
case 1 :
season = "봄";
break;
case 2 :
season = "여름";
break;
case 3 :
season = "가을";
break;
}
}
else
{
a = "입력값이 잘못되었습니다.";
}
System.out.printf(a, season);
}
}
문제 5) 가위바위보 게임
가위(1), 바위(2), 보(3)을 입력받고 컴퓨터는 random으로 발생하여 가위바위보 게임을 진행합니다.
입력예) 가위(1), 바위(2), 보(3) 중 하나를 입력하세요. : 1
출력예) 당신은 1입니다.
컴은 1입니다.
비겼습니다.
입력예) 가위(1), 바위(2), 보(3) 중 하나를 입력하세요. : 1
출력예) 당신은 3입니다.
컴은 2입니다.
당신이 이겼습니다.
package Sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
System.out.print("가위(1), 바위(2), 보(3) 중 하나를 입력하세요. : ");
int user = scn.nextInt();
int com = (int)(Math.random()*3)+1;
System.out.printf("당신은 %d입니다.\n", user);
System.out.printf("컴은 %d입니다.\n", com);
String a = "";
if(user>0 && user<4)
{
switch(user-com)
{
case 0 :
a = "비겼습니다.";
break;
case 1, -2 :
a = "당신이 이겼습니다.";
break;
case 2, -1 :
a = "컴이 이겼습니다.";
break;
}
}
else
{
a = "입력값이 잘못되었습니다.";
}
System.out.print(a);
}
}
문제 6) 주민등록번호를 입력받아 남자인지 여자인지 구분하는 프로그램
입력예) 당신의 주민번호를 입력하세요. : 123456-3123123
출력예) 당신은 여자입니다.
package Sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
System.out.print("당신의 주민번호를 입력하세요. : ");
char a = scn.next().charAt(7);
String b = "당신은 %s입니다.";
String gender = "";
switch(a)
{
case '1', '3' :
gender = "남자";
break;
case '2', '4' :
gender = "여자";
break;
default :
b = "입력값이 잘못되었습니다.";
}
System.out.printf(b, gender);
}
}
문제 7) 1번은 강아지, 2번은 고양이, 3번은 병아리로 정하고 번호를 입력하면 번호에 해당하는 동물을 영어로 출력하는 프로그램
해당번호가 없으면 "번호가 잘못되었습니다."
강아지 - dog, 고양이 - cat, 병아리 - chick
입력예) 번호를 입력하세요. : 2
출력예) cat
package Sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
System.out.print("번호를 입력하세요. : ");
int a = scn.nextInt();
String b = "";
switch(a)
{
case 1 :
b = "dog";
break;
case 2 :
b = "cat";
break;
case 3 :
b = "chick";
break;
default :
b = "번호가 잘못되었습니다.";
}
System.out.print(b);
}
}
문제 8) 년도와 월을 입력 받아 해당년도가 윤년이면 2월을 29일로 출력하는 프로그램 (예외처리 고려하지않음)
입력예) 2020 2
출력예) 2020년은 윤년으로 29일 입니다.
입력예) 2021 2
출력예) 2021년은 평년으로 28일 입니다.
package Sample;
import java.util.*;
public class Sample
{
public static void main(String[] args)
{
Scanner scn = new Scanner(System.in);
int year = scn.nextInt();
int month = scn.nextInt();
int day = 31;
boolean a = year%400==0;
boolean b = year%4==0 && year%100!=0;
String c = "";
c = (b || a)?"윤년":"평년";
switch(month)
{
case 2 :
if(c.equals("윤년"))
{
day = 29;
}
else
{
day = 28;
}
break;
case 4, 6, 9, 11 :
day = 30;
}
System.out.printf("%d년은 %s으로 %d일 입니다.", year, c, day);
}
}
'자바 JAVA' 카테고리의 다른 글
배열을 이용한 예제풀이 ㅡ 자바 기초 (0) | 2021.05.22 |
---|---|
while문 이용 예제풀이 - 자바 기초 (0) | 2021.05.22 |
다중 for문 이용 예제 풀이 - 자바 기초 (0) | 2021.05.19 |
for문 예제 풀이 - 자바 기초 (0) | 2021.05.15 |
삼항연산자 예제풀이 - 자바 기초 (0) | 2021.05.15 |