목차
package kr.s03.operation;
public class IfMain01 {
public static void main(String[] args) {
System.out.println("===단일if문===");
int n = 10;
//단일 if문: 조건이 true이면 if블럭 안의 수행문을 실행
if(n > 5) {//if문 시작
System.out.println("n은 5보다 크다.");
}//if문 끝
System.out.println("==============");
//if문 불럭내의 수행문이 한줄이면 {}블럭을 생략할 수 있음.
if (n<5)
System.out.println("~~~~~~~~");
System.out.println("프로그램 종료!");
}
}
===단일if문===
n은 5보다 크다.
==============
프로그램 종료!
package kr.s03.operation;
public class IfMain02 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("정수형 데이터 한 개 입력:");
int a = input.nextInt();
//if~else
//조건이 true이면 if블럭의 수행문을 실행, 조건이 false이면 else블럭의 수행문을 실행
if(a%2 ==1) {
System.out.println("홀수이다.");
}else {
System.out.println("짝수이다.");
}
input.close();
}
}
정수형 데이터 한 개 입력:5
홀수이다.
package kr.s03.operation;
public class IfMain03 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("정수 한 개 입력:");
int a = input.nextInt();
//다중if문
if(a>0) {
System.out.println(a+"는 양수입니다.");
}
else if (a<0){
System.out.println(a+"는 음수입니다.");
}
else {//a가 0일 때
System.out.println(a+"입니다.");
}
input.close();
}
}
정수 한 개 입력:5
5는 양수입니다.
package kr.s03.operation;
public class IfMain04 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
int score;
char grade;
System.out.print("성적입력");
score = input.nextInt();
//다중if문
if(score >=90 && score <=100) {
grade = 'A';
}
else if(score >=80 && score <=89) {
grade = 'B';
}
else if(score >=70 && score <=79) {
grade = 'C';
}
else if(score >=60 && score <=69) {
grade = 'D';
}
else if(score >= 0 && score <= 59) {
grade = 'F';
}
else {//100초과이거나 음수일 때
grade = '?';
}
System.out.printf("성적 : %d%n", score);
System.out.printf("등급: %c%n", grade);
input.close();
}
}
성적입력70
성적 : 70
등급: C
package kr.s03.operation;
public class IfMain05 {
public static void main(String[] args) {
/*
* [실습]
* 정수 하나를 입력하여 짝수면 10을 더하고 홀수면 20을 더하여
* 결과값을 출력하시오.
* [입력예시]
* 정수 하나 입력:5
*
* [출력예시]
* 결과:25
*/
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("정수 하나 입력:");
int num = input.nextInt();
int result = 0;
if(num%2==0) {
result = num+10;
}
else {
result = num+20;
}
System.out.printf("결과:%d%n", result);
input.close();
}
}
정수 하나 입력:5
결과:25
package kr.s03.operation;
public class IfMain06 {
public static void main(String[] args) {
/*
* [실습]
* 정수 두 개를 입력 받아서 변수에 저장하고 두 값 중 최대값과
* 최소값을 구하여 최대값과 최소값을 출력하시오.
* 입력한 두 수가 같을 경우 "두 수는 같다" 라고 출력하시오.
*
* [입력예시]
* 첫번째 정수 입력:3
* 두번쨰 정수 입력:2
* or
* 첫번째 정수 입력:5
* 두번쨰 정수 입력:5
*
* [출력예시]
* 최대값:3
* 최소값:2
* or
* "두 수는 같다".
*
*/
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("첫번째 정수 입력:");
int first = input.nextInt();
System.out.print("두번째 정수 입력:");
int second = input.nextInt();
if(first > second) {
System.out.println("최대값:"+first);
System.out.println("최소값:"+second);
}
else if(first < second) {
System.out.println("최대값:"+second);
System.out.println("최소값:"+first);
}
else {
System.out.println("두 수는 같다.");
}
input.close();
}
}
첫번째 정수 입력:3
두번째 정수 입력:2
최대값:3
최소값:2
package kr.s03.operation;
public class IfMain07 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
/*
* [실습]
* 생년월일 입력하고 만 나이를 출력하는 프로그램을 작성하시오.
* 만 나이 = (현재년도 - 태어난 연도) - (생일이 지났으면 0, 생일이 지나지않았으면 1)
*
* [입력 예시]
* 출생 연도 입력:2000
* 월 입력:3
* 일 입력:12
*
* [출력 예시]
* 만 나이는 23
*
*/
//현재 날짜 정보
int nowYear =2024;
int nowMonth =2;
int nowdate = 21;
System.out.print("생년월일 입력:");
int year = input.nextInt();
System.out.print("월 입력:");
int month = input.nextInt();
System.out.print("일 입력:");
int date = input.nextInt();
int age = nowYear - year;
/*
if ((nowMonth >= month && nowdate >=date) ||
(nowMonth >= month && nowdate <date)) {
System.out.println("만 나이는 "+ age);
}
else {
age--;//age-=1;//age = age - 1;
System.out.println("만 나이는 " + age);
}
*/
if(nowMonth < month || (nowMonth == month && nowdate<date)) {
age--;
}
System.out.println("만 나이는 " + age);
input.close();
}
}
생년월일 입력:2000
월 입력:3
일 입력:12
만 나이는 23
package kr.s03.operation;
public class IfMain08 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
int result = 0; //연산의 결과를 저장할 변수 선언 및 초기화
System.out.print("첫번째 수:");
int first = input.nextInt();
System.out.print("연산자:");
String operator = input.next(); //next는 공백없이 nextLine공백있음 (+,-,*,/,%)
System.out.print("두번째 수:");
int second = input.nextInt();
if(operator.equals("+") )//문자열을 비교할 때는 ==가 아닌 .equlas 사용
result = first+second;
else if(operator.equals("-")) {
result = first-second;
}
else if(operator.equals("*")) {
result = first*second;
}
else if(operator.equals("/")) {
if (second != 0){
result = first/second;
}
else {
System.out.println("0으로 나눌 수 없습니다.");
//프로그램종료
System.exit(0);
}
}
else if(operator.equals("%")) {
if (second != 0){
result = first%second;
}
else {
System.out.println("0으로 나눌 수 없습니다.");
//프로그램종료
System.exit(0);
}
}
else {
System.out.println("잘못된 연산자 입력");
//프로그램종료
System.exit(0);
}
System.out.println();//단순 줄바꿈
System.out.printf("%d%s%d = %d",first,operator,second,result);
input.close();
}
}
첫번째 수:1
연산자:*
두번째 수:5
1*5 = 5
실습
package kr.s03.operation;
public class CoffeeMain {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
/*내가 한거 오류는 안나지만 코드가 좀 아쉽고 완벽하진않음.
* [실습]
* 동전을 넣고 커피를 주문하면 커피를 판매하는 자판기 프로그램
* 자판기는 자판기 보유 동전(1000),커피(10),프림(10),설탕(10)
* 을 보유하고 있고 커피를 주문할 때 마다 자판기 보유 동전-거스름돈,
* 커피 5, 프림 3, 설탕 1 씩 차감되고 0이 되면 판매를 중단함.
*
* [입력 및 출력 예시]
* 동전을 넣으세요(커피값:400원):500
*
* 거스름돈 : 100원
* 맛 좋은 커피가 준비되었습니다.
* or
* 동전을 넣으세요(커피값:400원):300
* (고객이 투입한 동전이 커피값보다 작으면) 투입한 동전이 부족합니다.
* or
* 동전을 넣으세요(커피값:400원):2000
* (자판기 보유 동전이 부족하면) 거스름돈이 부족합니다.
* or
* (커피가 부족하면) 커피가 부족합니다.
* (프림이 부족하면) 프림이 부족합니다.
* (설탕이 부족하면) 설탕이 부족합니다.
* ======현재 자판기 정보======
* 커피 : 5
* 프림 : 7
* 설탕 : 1
* 자판기 보유 동전 금액: 900원
* 투입한 동전 금액:500원
* ======================
*/
//커피 정보
int price = 400;
//커피 한 잔에 들어갈 양
int content_coffee = 5;
int content_cream = 3;
int content_sugar =1 ;
//커피에 들어갈 재료의 현재 보유량
int coffee = 10;
int cream = 10;
int sugar = 10;
//투입한 금액 누적
int amount = 0;
//자판기 보유 동전
int coin = 1000;
while(true) {
System.out.print("1:커피마시기|2:종료>");
int num = input.nextInt();
if(num==1) {
System.out.print("동전을 넣으세요(커피값:400원): ");
amount = input.nextInt();
//거스름돈
int sum = amount-price;
coffee = coffee - content_coffee;
cream = cream - content_cream;
sugar = sugar - content_sugar;
//자판기 보유 동전
int coin2 = coin-sum;
coin = coin-sum;
if(amount>price) {
if(coin <0) {
System.out.println("거스름돈이 부족합니다.");
break;
}
if(coffee <0) {
System.out.println("커피가 부족합니다.");
break;
}
else if(cream <0 ) {
System.out.println("프림이 부족합니다.");
break;
}
else if(sugar <0 ) {
System.out.println("설탕이 부족합니다.");
break;
}
System.out.println("거스름돈:"+(sum)+"원");
System.out.println("맛 좋은 커피가 준비되었습니다.");
}else if(amount<price) {
System.out.println("투입한 동전이 부족합니다.");
}
System.out.println("======현재 자판기 정보======");
System.out.println("커피:" + coffee);
System.out.println("프림:" + cream);
System.out.println("설탕:" + sugar);
System.out.println("자판기 보유 동전 금액:" + (coin2)+"원");
System.out.println("투입한 동전 금액:" + amount +"원");//누적한 투입 동전인지 모르고 만든 것(틀린거임 이 코드는)
}
else if(num==2) {
System.out.println("자판기 안녕~~~");
break;
}else {
System.out.println("잘못 입력했습니다.");
}
}
input.close();
}
}
1:커피마시기|2:종료>1
동전을 넣으세요(커피값:400원): 500
거스름돈:100원
맛 좋은 커피가 준비되었습니다.
======현재 자판기 정보======
커피:5
프림:7
설탕:9
자판기 보유 동전 금액:900원
투입한 동전 금액:500원
1:커피마시기|2:종료>2
자판기 안녕~~~
'쌍용교육(JAVA) > JAVA' 카테고리의 다른 글
쌍용교육 -JAVA 수업 4일차 While문 (0) | 2024.04.11 |
---|---|
쌍용교육 -JAVA 수업 4일차 Switch문 (0) | 2024.04.11 |
쌍용교육 -JAVA 수업 2~3일차 For While문 (0) | 2024.04.11 |
쌍용교육 -JAVA 수업 2~3일차 Operator연산자 (0) | 2024.04.11 |
쌍용교육 -JAVA 수업 2일차 Variable변수 (0) | 2024.04.11 |
package kr.s03.operation;
public class IfMain01 {
public static void main(String[] args) {
System.out.println("===단일if문===");
int n = 10;
//단일 if문: 조건이 true이면 if블럭 안의 수행문을 실행
if(n > 5) {//if문 시작
System.out.println("n은 5보다 크다.");
}//if문 끝
System.out.println("==============");
//if문 불럭내의 수행문이 한줄이면 {}블럭을 생략할 수 있음.
if (n<5)
System.out.println("~~~~~~~~");
System.out.println("프로그램 종료!");
}
}
===단일if문===
n은 5보다 크다.
==============
프로그램 종료!
package kr.s03.operation;
public class IfMain02 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("정수형 데이터 한 개 입력:");
int a = input.nextInt();
//if~else
//조건이 true이면 if블럭의 수행문을 실행, 조건이 false이면 else블럭의 수행문을 실행
if(a%2 ==1) {
System.out.println("홀수이다.");
}else {
System.out.println("짝수이다.");
}
input.close();
}
}
정수형 데이터 한 개 입력:5
홀수이다.
package kr.s03.operation;
public class IfMain03 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("정수 한 개 입력:");
int a = input.nextInt();
//다중if문
if(a>0) {
System.out.println(a+"는 양수입니다.");
}
else if (a<0){
System.out.println(a+"는 음수입니다.");
}
else {//a가 0일 때
System.out.println(a+"입니다.");
}
input.close();
}
}
정수 한 개 입력:5
5는 양수입니다.
package kr.s03.operation;
public class IfMain04 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
int score;
char grade;
System.out.print("성적입력");
score = input.nextInt();
//다중if문
if(score >=90 && score <=100) {
grade = 'A';
}
else if(score >=80 && score <=89) {
grade = 'B';
}
else if(score >=70 && score <=79) {
grade = 'C';
}
else if(score >=60 && score <=69) {
grade = 'D';
}
else if(score >= 0 && score <= 59) {
grade = 'F';
}
else {//100초과이거나 음수일 때
grade = '?';
}
System.out.printf("성적 : %d%n", score);
System.out.printf("등급: %c%n", grade);
input.close();
}
}
성적입력70
성적 : 70
등급: C
package kr.s03.operation;
public class IfMain05 {
public static void main(String[] args) {
/*
* [실습]
* 정수 하나를 입력하여 짝수면 10을 더하고 홀수면 20을 더하여
* 결과값을 출력하시오.
* [입력예시]
* 정수 하나 입력:5
*
* [출력예시]
* 결과:25
*/
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("정수 하나 입력:");
int num = input.nextInt();
int result = 0;
if(num%2==0) {
result = num+10;
}
else {
result = num+20;
}
System.out.printf("결과:%d%n", result);
input.close();
}
}
정수 하나 입력:5
결과:25
package kr.s03.operation;
public class IfMain06 {
public static void main(String[] args) {
/*
* [실습]
* 정수 두 개를 입력 받아서 변수에 저장하고 두 값 중 최대값과
* 최소값을 구하여 최대값과 최소값을 출력하시오.
* 입력한 두 수가 같을 경우 "두 수는 같다" 라고 출력하시오.
*
* [입력예시]
* 첫번째 정수 입력:3
* 두번쨰 정수 입력:2
* or
* 첫번째 정수 입력:5
* 두번쨰 정수 입력:5
*
* [출력예시]
* 최대값:3
* 최소값:2
* or
* "두 수는 같다".
*
*/
java.util.Scanner input =
new java.util.Scanner(System.in);
System.out.print("첫번째 정수 입력:");
int first = input.nextInt();
System.out.print("두번째 정수 입력:");
int second = input.nextInt();
if(first > second) {
System.out.println("최대값:"+first);
System.out.println("최소값:"+second);
}
else if(first < second) {
System.out.println("최대값:"+second);
System.out.println("최소값:"+first);
}
else {
System.out.println("두 수는 같다.");
}
input.close();
}
}
첫번째 정수 입력:3
두번째 정수 입력:2
최대값:3
최소값:2
package kr.s03.operation;
public class IfMain07 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
/*
* [실습]
* 생년월일 입력하고 만 나이를 출력하는 프로그램을 작성하시오.
* 만 나이 = (현재년도 - 태어난 연도) - (생일이 지났으면 0, 생일이 지나지않았으면 1)
*
* [입력 예시]
* 출생 연도 입력:2000
* 월 입력:3
* 일 입력:12
*
* [출력 예시]
* 만 나이는 23
*
*/
//현재 날짜 정보
int nowYear =2024;
int nowMonth =2;
int nowdate = 21;
System.out.print("생년월일 입력:");
int year = input.nextInt();
System.out.print("월 입력:");
int month = input.nextInt();
System.out.print("일 입력:");
int date = input.nextInt();
int age = nowYear - year;
/*
if ((nowMonth >= month && nowdate >=date) ||
(nowMonth >= month && nowdate <date)) {
System.out.println("만 나이는 "+ age);
}
else {
age--;//age-=1;//age = age - 1;
System.out.println("만 나이는 " + age);
}
*/
if(nowMonth < month || (nowMonth == month && nowdate<date)) {
age--;
}
System.out.println("만 나이는 " + age);
input.close();
}
}
생년월일 입력:2000
월 입력:3
일 입력:12
만 나이는 23
package kr.s03.operation;
public class IfMain08 {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
int result = 0; //연산의 결과를 저장할 변수 선언 및 초기화
System.out.print("첫번째 수:");
int first = input.nextInt();
System.out.print("연산자:");
String operator = input.next(); //next는 공백없이 nextLine공백있음 (+,-,*,/,%)
System.out.print("두번째 수:");
int second = input.nextInt();
if(operator.equals("+") )//문자열을 비교할 때는 ==가 아닌 .equlas 사용
result = first+second;
else if(operator.equals("-")) {
result = first-second;
}
else if(operator.equals("*")) {
result = first*second;
}
else if(operator.equals("/")) {
if (second != 0){
result = first/second;
}
else {
System.out.println("0으로 나눌 수 없습니다.");
//프로그램종료
System.exit(0);
}
}
else if(operator.equals("%")) {
if (second != 0){
result = first%second;
}
else {
System.out.println("0으로 나눌 수 없습니다.");
//프로그램종료
System.exit(0);
}
}
else {
System.out.println("잘못된 연산자 입력");
//프로그램종료
System.exit(0);
}
System.out.println();//단순 줄바꿈
System.out.printf("%d%s%d = %d",first,operator,second,result);
input.close();
}
}
첫번째 수:1
연산자:*
두번째 수:5
1*5 = 5
실습
package kr.s03.operation;
public class CoffeeMain {
public static void main(String[] args) {
java.util.Scanner input =
new java.util.Scanner(System.in);
/*내가 한거 오류는 안나지만 코드가 좀 아쉽고 완벽하진않음.
* [실습]
* 동전을 넣고 커피를 주문하면 커피를 판매하는 자판기 프로그램
* 자판기는 자판기 보유 동전(1000),커피(10),프림(10),설탕(10)
* 을 보유하고 있고 커피를 주문할 때 마다 자판기 보유 동전-거스름돈,
* 커피 5, 프림 3, 설탕 1 씩 차감되고 0이 되면 판매를 중단함.
*
* [입력 및 출력 예시]
* 동전을 넣으세요(커피값:400원):500
*
* 거스름돈 : 100원
* 맛 좋은 커피가 준비되었습니다.
* or
* 동전을 넣으세요(커피값:400원):300
* (고객이 투입한 동전이 커피값보다 작으면) 투입한 동전이 부족합니다.
* or
* 동전을 넣으세요(커피값:400원):2000
* (자판기 보유 동전이 부족하면) 거스름돈이 부족합니다.
* or
* (커피가 부족하면) 커피가 부족합니다.
* (프림이 부족하면) 프림이 부족합니다.
* (설탕이 부족하면) 설탕이 부족합니다.
* ======현재 자판기 정보======
* 커피 : 5
* 프림 : 7
* 설탕 : 1
* 자판기 보유 동전 금액: 900원
* 투입한 동전 금액:500원
* ======================
*/
//커피 정보
int price = 400;
//커피 한 잔에 들어갈 양
int content_coffee = 5;
int content_cream = 3;
int content_sugar =1 ;
//커피에 들어갈 재료의 현재 보유량
int coffee = 10;
int cream = 10;
int sugar = 10;
//투입한 금액 누적
int amount = 0;
//자판기 보유 동전
int coin = 1000;
while(true) {
System.out.print("1:커피마시기|2:종료>");
int num = input.nextInt();
if(num==1) {
System.out.print("동전을 넣으세요(커피값:400원): ");
amount = input.nextInt();
//거스름돈
int sum = amount-price;
coffee = coffee - content_coffee;
cream = cream - content_cream;
sugar = sugar - content_sugar;
//자판기 보유 동전
int coin2 = coin-sum;
coin = coin-sum;
if(amount>price) {
if(coin <0) {
System.out.println("거스름돈이 부족합니다.");
break;
}
if(coffee <0) {
System.out.println("커피가 부족합니다.");
break;
}
else if(cream <0 ) {
System.out.println("프림이 부족합니다.");
break;
}
else if(sugar <0 ) {
System.out.println("설탕이 부족합니다.");
break;
}
System.out.println("거스름돈:"+(sum)+"원");
System.out.println("맛 좋은 커피가 준비되었습니다.");
}else if(amount<price) {
System.out.println("투입한 동전이 부족합니다.");
}
System.out.println("======현재 자판기 정보======");
System.out.println("커피:" + coffee);
System.out.println("프림:" + cream);
System.out.println("설탕:" + sugar);
System.out.println("자판기 보유 동전 금액:" + (coin2)+"원");
System.out.println("투입한 동전 금액:" + amount +"원");//누적한 투입 동전인지 모르고 만든 것(틀린거임 이 코드는)
}
else if(num==2) {
System.out.println("자판기 안녕~~~");
break;
}else {
System.out.println("잘못 입력했습니다.");
}
}
input.close();
}
}
1:커피마시기|2:종료>1
동전을 넣으세요(커피값:400원): 500
거스름돈:100원
맛 좋은 커피가 준비되었습니다.
======현재 자판기 정보======
커피:5
프림:7
설탕:9
자판기 보유 동전 금액:900원
투입한 동전 금액:500원
1:커피마시기|2:종료>2
자판기 안녕~~~
'쌍용교육(JAVA) > JAVA' 카테고리의 다른 글
쌍용교육 -JAVA 수업 4일차 While문 (0) | 2024.04.11 |
---|---|
쌍용교육 -JAVA 수업 4일차 Switch문 (0) | 2024.04.11 |
쌍용교육 -JAVA 수업 2~3일차 For While문 (0) | 2024.04.11 |
쌍용교육 -JAVA 수업 2~3일차 Operator연산자 (0) | 2024.04.11 |
쌍용교육 -JAVA 수업 2일차 Variable변수 (0) | 2024.04.11 |