public void practice8() {
Scanner sc = new Scanner(System.in);
System.out.print("피연산자1 입력: ");
int num1 = sc.nextInt();
System.out.print("피연산자2 입력: ");
int num2 = sc.nextInt();
sc.nextLine();
System.out.print("연산자를 입력(+,-,*,/,%): ");
char op = sc.nextLine().charAt(0);
//사용자가 입력한 값이 유효한 값인지 판별하기
int result = 0;
if (num1 > 0 && num2 > 0 ) { //둘다 양수일경우
if (op == '+') {
result = num1 + num2;
}else if (op == '-') {
result = num1 - num2;
}else if (op == '*'){
result = num1 * num2;
}else if (op == '/') {
result = num1 / num2;
}else if (op == '*') {
result = num1 % num2;
}else {//두개의 정수값 모두 양수이긴 하지만 연산기호를 잘못입력한경우
System.out.println("잘못입력하셨습니다. 프로그램을 종료합니다.");
return;
}
}else { //양수가 아닌경우
System.out.println("양수가 아닌값을 입력하셨습니다.프로그램을 종료합니다.");
}
System.out.printf("%d %c %d = %d",num1,op,num2,result);
// 방법3. 위의 내용에서 더 업그레이드 =======================================
/* if(num1 > 0 && num2 > 0) {
int result=0; // 연산기호에 맞춰서 산술 연산한 결과를 담아줄 변수 셋팅!
// 연산기호를 가지고 동등비교하는 걸 switch문으로 바꾼내용
switch(ch) {
case '+': result = num1 + num2; break;
case '-': result = num1 - num2; break;
case '*': result = num1 * num2; break;
case '/': result = num1 / num2; break;
case '%': result = num1 % num2; break;
default: System.out.println("연산자를 잘못 입력하셨습니다. 프로그램을 종료합니다."); return; // 메소드 빠져나갈수있도록
}
// 출력문은 여기에 단 한번만 기술할꺼임
System.out.printf("%d %c %d = %d", num1, op, num2, result);
}else {
System.out.println("양수가 아닌 값을 입력하셨습니다. 프로그램을 종료합니다.");
}
// ================================================================
*/
1. 입력, 수정, 조회, 삭제, 종료 메뉴를 만들고, 메뉴번호를 입력받아 실행 되면 "xx메뉴입니다"가 출력되도록 작성.
public void practice1() {
Scanner sc = new Scanner(System.in);
System.out.println("1.입력 ");
System.out.println("2.수정 ");
System.out.println("3.조회 ");
System.out.println("4.삭제 ");
System.out.println("9.종료 ");
System.out.print("메뉴 번호를 입력하세요 : ");
int num = sc.nextInt();
if(num == 1) {
System.out.println("입력 메뉴입니다.");
} else if (num == 2) {
System.out.println("수정 메뉴입니다.");
} else if (num == 3) {
System.out.println("조회 메뉴입니다.");
} else if (num == 4) {
System.out.println("삭제 메뉴입니다.");
} else if (num == 9) {
System.out.println("프로그램이 종료됩니다.");
} else {
System.out.print("잘못입력하셨습니다.");
}
}
/* 방법2. switch문 이용하는 방법 ==================
switch(menu) {
case 1 : System.out.println("입력 메뉴입니다."); break;
case 2 : System.out.println("수정 메뉴입니다."); break;
case 3 : System.out.println("조회 메뉴입니다."); break;
case 4 : System.out.println("삭제 메뉴입니다."); break;
case 9 : System.out.println("프로그램이 종료됩니다."); break;
default : System.out.println("잘못입력하셨습니다."); break;
}
============================================*/
2. 1~12월 사이의 달을 입력받고 그 달이 사계절 중 어떤 계절인지 출력되도록 조건문을 작성
public void practice4() {
Scanner sc = new Scanner(System.in);
System.out.print("1~12월 사이의 정수 입력: " );
int month = sc.nextInt();
switch (month) {
case 3 : case 4 : case 5 :
System.out.println(month +"월은 봄입니다.");
break;
case 6 : case 7 : case 8 :
System.out.println(month + "월은 여름입니다.");
break;
case 9 : case 10 : case 11 :
System.out.println(month + "월은 가을입니다.");
break;
case 12 : case 1 : case 2 :
System.out.println(month + "월은 겨울입니다.");
break;
default : System.out.println(month+"월은 잘못 입력된 달입니다.");
}
// 방법2. String 변수 사용해서 출력문은 한번만 쓰는 방식
/* String season = "";
switch(num) {
case 12: case 1: case 2:
season = "겨울";
break;
case 3: case 4: case 5:
season = "봄";
break;
case 6: case 7: case 8:
season = "여름";
break;
case 9: case 10: case 11:
season = "가을";
break;
default :
season = "잘못 입력된 달";
break;
}
System.out.println(num + "월은 " + season + "입니다.");
}
*/
}
3. 아이디와 비밀번호 입력받아 설정해둔 아이디와 비밀번호가 일치하면 "로그인 성공" , 비밀번호가 틀린경우 "비밀번호가 틀렸습니다.:아이디만 일치할경우 " 비밀번호가 틀렸습니다." 출력되도록 작성
public void practice5() {
//1.임의로 아이디와 비번 지정해두기
String userId = "hanbit";
String userPw = "1234";
//2.사용자에게 아이디와 비밀번호 입력받기
Scanner sc = new Scanner(System.in);
System.out.print("아이디: ");
String id = sc.nextLine();
System.out.print("비밀번호: ");
String pw = sc.nextLine();
//3. 사용자에게 입력받은 아이디와 비밀번호 가지고 조건검사후 결과 출력
if (id.equals(userId) && pw.equals(userPw)) { // 문자열간의 동등비교 equals, 둘다 일치할경우
System.out.println("로그인 성공");
} else if (id.equals(userId)) { //아이디만 일치할경우
System.out.println("비밀번호가 틀렸습니다.");
} else if(pw.equals(userPw)) { //비밀번호만 일치할경우
System.out.println("아이디가 틀렸습니다.");
} else {
System.out.println("둘 다 틀렸습니다.");
}
//중첩 if문 활용
/* if(userId.equals(id)){
* if(userPw.equals(pw)){
* System.out.println("로그인성공");
* }else{
* System.out.println("비밀번호가 틀렸습니다.";
* }
* } esle if(userPw.equals(pw)){
* System.out.println("아이디가 틀렸습니다.");
* } else {
* System.out.println("둘다 틀렸습니다.");
*
*/
}
4. 회원등급을 입력받아 아래와같은 권한이 출력되도록 작성
관리자등급 - 회원관리, 게시글 관리, 게시글 작성, 댓글작성, 게시글조회 회원 등급 - 게시글작성, 댓글작성, 게시글조회 비회원등급 - 게시글 조회
public void practice6() {
Scanner sc = new Scanner(System.in);
System.out.print("권한을 확인하고자 하는 회원 등급 : ");
String grade = sc.nextLine();
switch (grade) {
case "관리자" : System.out.println("회원관리, 게시글 관리");
case "회원" : System.out.println("게시글 작성, 댓글 작성");
case "비회원" : System.out.println("게시글 조회");
default : System.out.println("잘못 입력하셨습니다.");
}
}
5. 피연산자와 연산자를 입력받아 덧셈, 뺄셈, 곱셈, 나눗셈 ,나누기 몫의 결과가 출력되도록 작성
'JAVA > JAVA실습문제' 카테고리의 다른 글
API 실습문제 _ SimpleDateFormat/ StringTokenizer 등 (0) | 2022.11.10 |
---|---|
배열 실습문제 (0) | 2022.11.06 |
조건문, 반복문 실습문제 (if,switch,while,for) (0) | 2022.11.06 |
반복문 실습문제 ( for,while) (0) | 2022.11.06 |
연산자 실습문제 _ 삼항연산자 (0) | 2022.11.06 |