JAVA
-
Test036 조건문 if ~ else if ~ else 문(6)2020.09.02
-
Test035 조건문 if ~ else if ~ else 문(5)2020.09.02
-
Test034 조건문 if ~ else if ~ else 문(4)2020.09.02
-
Test033 조건문 if ~ else if ~ else 문(3)2020.09.02
-
Test032 조건문 if ~ else if ~ else 문(2)2020.09.02
-
Test031 조건문 if ~ else if ~ else 문(1)2020.09.02
Test036 조건문 if ~ else if ~ else 문(6)
※ 사용자로부터 임의의 정수 세 개를 입력받아 작은 수에서 큰 수 순으로 출력하는 프로그램을 구현한다.
실행 예)
첫 번째 정수 입력 : 112
두 번째 정수 입력 : 8
세 번째 정수 입력 : 21
>> 정렬 결과 : 8 21 112
계속하려면 아무 키나 누르세요
첫 번째 정수 입력 : 15
두 번째 정수 입력 : 121
세 번째 정수 입력 : 12
>> 정렬 결과 : 15 15 121
계속하려면 아무 키나 누르세요...
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Test036
{
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a,b,c;
System.out.print("첫 번째 정수 입력 : ");
a = Integer.parseInt(br.readLine());
System.out.print("두 번째 정수 입력 : ");
b = Integer.parseInt(br.readLine());
System.out.print("세 번째 정수 입력 : ");
c = Integer.parseInt(br.readLine());
if (a>b) // 첫 번쨰 정수 (a)가 두 번째 정수(b)보다 크다면...
{
// a와 b의 자리를 바꾼다.
a = a^b;
b = b^a;
a = a^b;
}
if(a>c) // 첫 번째 정수 (a)가 세 번째 정수(c)보다 크다면...
{
// a와 c의 자리를 바꾼다.
a = a^c;
c = c^a;
a = a^c;
}
if(b>c) //두 번째 정수 (b)가 세 번째 정수(c)보다 크다면...
{
// b와 c의 자리를 바꾼다.
b = b^c;
c = c^b;
b = b^c;
}
// 최종 결과 출력 → a,b,c 순서대로 출력
System.out.printf("%d %d %d",a,b,c);
}
}
// 실행 결과
/*
첫 번째 정수 입력 : 13
두 번째 정수 입력 : 7
세 번째 정수 입력 : 10
7 10 13계속하려면 아무 키나 누르십시오 . . .
첫 번째 정수 입력 : 5
두 번째 정수 입력 : 20
세 번째 정수 입력 : 5
5 5 20계속하려면 아무 키나 누르십시오 . . .
*/'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test038 조건문 if ~ else if ~ else 문(8) (0) | 2020.09.02 |
|---|---|
| Test037 조건문 if ~ else if ~ else 문(7) (0) | 2020.09.02 |
| Test035 조건문 if ~ else if ~ else 문(5) (0) | 2020.09.02 |
| Test034 조건문 if ~ else if ~ else 문(4) (0) | 2020.09.02 |
| Test033 조건문 if ~ else if ~ else 문(3) (0) | 2020.09.02 |
Test035 조건문 if ~ else if ~ else 문(5)
※ 사용자로부터 임의의 정수를 두 개 입력받아 큰 수를 출력하는 프로그램을 구현한다. 단, 입력받은 두 수가 같은 경우
아무것도 출력하지 않도록 구성한다.
실행 예)
첫 번째 정수 입력 : 11
두 번째 정수 입력 : 22
>> 큰 수 → 22
계속하려면 아무 키나 누르세요...
첫 번째 정수 입력 : 55
두 번째 정수 입력 : 4
>> 큰 수 → 55
계속하려면 아무 키나 누르세요...
첫 번째 정수 입력 : 31
두 번째 정수 입력 : 31
계속하려면 아무 키나 누르세요...
import java.io.*;
public class Test035
{
public static void main(String[] args) throws IOException
{
// BufferedReader 인스턴스 생성
BufferedReader br = new BufferedReader(InputStreamReader(System.in));
// 주요 변수 선언
int a, b; //-- 첫 번째, 두 번째 입력받을 변수
// 사용자에게 안내 메세지 출력
System.out.print("첫 번째 정수 입력 : ");
a = Integer.parseInt(br.readLine());
System.out.print("두 번째 정수 입력 : ");
b = Integer.parseInt(br.readLine());
// 연산 및 처리(조건에 따른 처리 및 결과 출력)
if(a>b) //-- 첫 번째 입력받은 정수가 크다면...
{
System.out.println(">> 큰 수 →" + a);
}
else if(a<b)
{
System.out.println(">> 큰 수 →" + b);
}
}
}
// 실행 결과
/*
첫 번째 정수 입력 : 2
두 번째 정수 입력 : 5
>> 큰 수 → 5
계속하려면 아무 키나 누르십시오 . . .
첫 번째 정수 입력 : 8
두 번째 정수 입력 : 2
>> 큰 수 → 8
계속하려면 아무 키나 누르십시오 . . .
*/'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test037 조건문 if ~ else if ~ else 문(7) (0) | 2020.09.02 |
|---|---|
| Test036 조건문 if ~ else if ~ else 문(6) (0) | 2020.09.02 |
| Test034 조건문 if ~ else if ~ else 문(4) (0) | 2020.09.02 |
| Test033 조건문 if ~ else if ~ else 문(3) (0) | 2020.09.02 |
| Test032 조건문 if ~ else if ~ else 문(2) (0) | 2020.09.02 |
Test034 조건문 if ~ else if ~ else 문(4)
※ 사용자로부터 임의의 두 정수와 연산자를 입력받아 해당 연산자의 연산 처리 결과를 출력하는 프로그램을 구현한다.
단, if 조건문을 활용하여 처리할 수 있도록 하며, 연산 결과는 편의상 정수형으로 처리될 수 있도록 한다.
실행 예)
첫 번째 정수 입력 : 10
두 번째 정수 입력 : 14
연산자 입력[+ - * /] : +
>> 10 + 14 = 24
계속하려면 아무 키나 누르세요...
방법 ①
char형 변수에 입력을 받아 문자를 비교하여 연산을 수행
int a,b; // 첫 번째 변수, 두 번째 변수
char op;
System.out.print("첫 번째 정수 입력 : ");
a = Integer.parseInt(br.readLine());
System.out.print("두 번째 정수 입력 : ");
b = Integer.parseInt(br.readLine());
// Integer.parseInt()
// "1234" → Integer.parseInt("1234"); → 1234
// "abcd" → Integer.parseInt("abcd"); → (X)
System.out.print("연산자 입력[+ - * /] : ");
//op = Integer.parseInt(br.readLine());
//op = br.readLine();
op = (char)System.in.read();
// 확인(테스트)
System.out.println("op : " + op);
if (op == '+')
{
System.out.printf("\n>> %d + %d = %d\n",a,b,(a+b));
}
else if(op == '-')
{
System.out.printf("\n>> %d - %d = %d\n",a,b,(a-b));
}
else if(op == '*')
{
System.out.printf("\n>> %d * %d = %d\n",a,b,(a*b));
}
else if(op == '/')
{
System.out.printf("\n>> %d / %d = %d\n",a,b,(a/b));
}
else
System.out.printf("\n>> 입력 과정에 오류가 존재합니다.\n");
*/
방법 ②
System.in.read()로 각 연산자 문자에 대한 아스키코드 값을 정수형으로 입력받아 비교하여 연산을 수행
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a,b,op; // 첫 번째 변수, 두 번째 변수, 그리고 연산자
System.out.print("첫 번째 정수 입력 :");
a = Integer.parseInt(br.readLine());
System.out.print("두 번째 정수 입력 :");
b = Integer.parseInt(br.readLine());
System.out.print("첫 번째 정수 입력 :");
op = System.in.read();
if(op == 43)
System.out.printf("\n>> %d + %d = %d\n",a,b,(a+b));
else if(op == 45)
System.out.printf("\n>> %d - %d = %d\n",a,b,(a-b));
else if(op == 42)
System.out.printf("\n>> %d * %d = %d\n",a,b,(a*b));
else if(op == 47)
System.out.printf("\n>> %d / %d = %d\n",a,b,(a/b));
else
System.out.printf("\n>> 입력 과정에 오류가 존재합니다.\n");
방법 ③
int a, b, result = 0;
char op;
System.out.print("첫 번째 정수 입력 : ");
a = Integer.parseInt(br.readLine());
System.out.print("두 번째 정수 입력 : ");
b = Integer.parseInt(br.readLine());
System.out.print("연산자 입력[+ - / * /] : ");
op = (char)System.in.read();
if(op == '+')
result = a + b;
else if(op == '-')
result = a - b;
else if(op == '*')
result = a * b;
else if (op == '/')
result = a/b;
System.out.printf("\n>> %d %c %d = %d \n",a,op,b,result);
실행 결과
// 실행 결과 /* 첫 번째 정수 입력 : 5 두 번째 정수 입력 : 6 연산자 입력[+ - / * /] : + >> 5 + 6 = 11 계속하려면 아무 키나 누르십시오 . . . 첫 번째 정수 입력 : 4 두 번째 정수 입력 : 12 연산자 입력[+ - / * /] : - >> 4 - 12 = -8 계속하려면 아무 키나 누르십시오 . . . 첫 번째 정수 입력 : 45 두 번째 정수 입력 : 25 연산자 입력[+ - / * /] : * >> 45 * 25 = 1125 계속하려면 아무 키나 누르십시오 . . . 첫 번째 정수 입력 : 12 두 번째 정수 입력 : 3 연산자 입력[+ - / * /] : / >> 12 / 3 = 4 계속하려면 아무 키나 누르십시오 . . . */
'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test036 조건문 if ~ else if ~ else 문(6) (0) | 2020.09.02 |
|---|---|
| Test035 조건문 if ~ else if ~ else 문(5) (0) | 2020.09.02 |
| Test033 조건문 if ~ else if ~ else 문(3) (0) | 2020.09.02 |
| Test032 조건문 if ~ else if ~ else 문(2) (0) | 2020.09.02 |
| Test031 조건문 if ~ else if ~ else 문(1) (0) | 2020.09.02 |
Test033 조건문 if ~ else if ~ else 문(3)
※ 사용자로부터 임의의 연도를 입력받아 입력받은 연도가... 윤년인지 평년인지 판별하여 그 결과를 출력하는 프로그램을 구현한다. 단, 입력은 BufferedReader 를 활용하고, if 조건문을 활용하여 처리할 수 있도록 한다.
실행 예)
임의의 연도 입력 : 2020
2020 → 윤년
계속하려면 아무 키나 누르세요...
임의의 연도 입력 : 2021
2021 → 평년
계속하려면 아무 키나 누르세요...
※ 윤년 → 2월의 마지막 날이 29일
평년 → 2월의 마지막 날이 28일
※ 윤년을 판별하기 위한 조건
연도가 4의 배수이면서, 100의 배수가 아니거나.
또는 400의 배수이면 윤년~!!!
그렇지 않으면 평년~!!!
mport java.io.*;
public class Test033
{
public static void main(String[] args) throws IOException
{
// BufferedReader 인스턴스 생성
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 주요 변수 선언
int year; // 입력받을 년도
// 연산 및 처리
System.out.print(" 임의의 연도 입력 : ");
year = Integer.parseInt(br.readLine());
if(year % 4 == 0)
{
if(year % 400 == 0 || year % 100 != 0)
{
System.out.println(year + " → 윤년" );
}
else
{
System.out.println(year + " → 평년" );
}
}
else
System.out.println(year + " → 평년" );
}
}
// 실행 결과
/*
임의의 연도 입력 : 2020
2020 → 윤년
계속하려면 아무 키나 누르십시오 . . .
임의의 연도 입력 : 2012
2012 → 윤년
계속하려면 아무 키나 누르십시오 . . .
임의의 연도 입력 : 2003
2003 → 평년
계속하려면 아무 키나 누르십시오 . . .
*/
'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test035 조건문 if ~ else if ~ else 문(5) (0) | 2020.09.02 |
|---|---|
| Test034 조건문 if ~ else if ~ else 문(4) (0) | 2020.09.02 |
| Test032 조건문 if ~ else if ~ else 문(2) (0) | 2020.09.02 |
| Test031 조건문 if ~ else if ~ else 문(1) (0) | 2020.09.02 |
| Test030 조건문 if (0) | 2020.09.02 |
Test032 조건문 if ~ else if ~ else 문(2)
※ 사용자로부터 임의의 정수를 입력받아 입력받은 정수가... 짝수인지, 홀수인지, 영인지 결과를 판별하여 출력하는 프로그램을 구현한다.
실행 예)
임의의 정수 입력 : 4
4 → 짝수
계속하려면 아무 키나 누르세요...
임의의 정수 입력 : 13
13 → 홀수
계속하려면 아무 키나 누르세요...
임의의 정수 입력 : 0
0 → 영
계속하려면 아무 키나 누르세요...
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.IOException;
public class Test032
{
public static void main(String[] args) throws IOException
{
// BufferedReader 인스턴스 생성
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 주요 변수 선언
int num;
// 연산 및 처리
// ① 입력 안내 메세지 출력
System.out.print("임의의 정수 입력 : ");
// ② 임의의 정수를 문자열 형태로 입력 받아 정수형태로 파싱하여 저장
num = Integer.parseInt(br.readLine());
// ③ 저장된 정수가 홀수인지 짝수인지 0인지 구별
// 조건문의 구성 순서 check~!!!
/*
if(num % 2 == 0 && num != 0)
{
System.out.printf("%d → 짝수\n",num);
}
else if(num % 2 == 1 || num % 2 == -1)
{
System.out.printf("%d → 홀수\n",num);
}
else
System.out.printf("%d → 영\n",num);
*/
String result = "판별 불가";
if(num == 0)
{
result = "영";
}
else if (num % 2 ==0)
{
result = "짝수";
}
else if (num % 2 !=0)
{
result = "홀수";
}
System.out.println(num + " → " + result);
}
}
// 실행 결과
/*
임의의 정수 입력 : 7
7 → 홀수
계속하려면 아무 키나 누르십시오 . . .
임의의 정수 입력 : 14
14 → 짝수
계속하려면 아무 키나 누르십시오 . . .
임의의 정수 입력 : 0
0 → 영
계속하려면 아무 키나 누르십시오 . . .
*/
※ 조건문을 구성할 때에는 항상 조건의 구성 순서에 유의해야 한다.
※ 조건문의 구성 과정에서 이외의 영역(else)을 업무에 포함된 내용으로 처리하는 것은 바람직하지 않을 경우가 있다.
불가능한 경우는 어쩔 수 없더라도 가급적이면 업무에 포함되지 않은 내용을 이외의 영역(else)에서 처리할 수 있도록 하자.
'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test034 조건문 if ~ else if ~ else 문(4) (0) | 2020.09.02 |
|---|---|
| Test033 조건문 if ~ else if ~ else 문(3) (0) | 2020.09.02 |
| Test031 조건문 if ~ else if ~ else 문(1) (0) | 2020.09.02 |
| Test030 조건문 if (0) | 2020.09.02 |
| Test029 조건 연산자(삼항 연산자) (4) (0) | 2020.09.02 |
Test031 조건문 if ~ else if ~ else 문(1)
※ 사용자로부터 이름, 국어점수, 영어점수, 수학점수를 입력받아 다음과 같은 형태로 출력하는 프로그램을 작성한다.
이 때, 등급은 평균 점수를 기준으로 처리한다.
90점 ~ 100점 : A 80점 ~ 89점 : B
70점 ~ 79점 : C 60점 ~ 69점 : D
60점 미만 : F
입력받는 과정은 BufferedReader 를 활용할 수 있도록 하며, printf() 메소드를 통해 출력할 수 있도록 구현한다.
실행 예)
이름 입력 : 조윤상
국어 점수 : 90
영어 점수 : 80
수학 점수 : 70
>> 당신의 이름은 조윤상입니다.
>> 국어 점수는 90,
>> 영어 점수는 80,
>> 수학 점수는 70,
>> 총점은 240, 평균은 80입니다.
>> 등급은 B 입니다.
계속하려면 아무 키나 누르세요...
import java.io.*;
public class Test031
{
public static void main(String[] args) throws IOException
{
//BufferedReader 인스턴스 생성
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 주요 변수 선언
String name;
int kor, eng, mat;
int sum = 0;
double avg;
char grade;
//char grade = 'F';
// 연산 및 처리
System.out.print("이름 입력 : ");
name = br.readLine();
System.out.print("국어 점수 : ");
kor = Integer.parseInt(br.readLine());
System.out.print("영어 점수 : ");
eng = Integer.parseInt(br.readLine());
System.out.print("수학 점수 : ");
mat = Integer.parseInt(br.readLine());
sum = kor + eng + mat;
//
avg = sum / 3.0; //check~!!!
if (avg >= 90)
{
grade = 'A';
}
else if (avg >= 80)
{
grade = 'B';
}
else if (avg >= 70)
{
grade = 'C';
}
else if (avg >= 60)
{
grade = 'D';
}
else
grade ='F';
// 결과 출력
System.out.println();
System.out.println("당신의 이름은" + name + " 입니다." );
System.out.println("국어 점수는 " + kor + ",\n영어 점수는 " + eng + ",\n수학 점수는 " + mat);
System.out.println("총점은" + sum + ", 평균은" + avg + "입니다.");
System.out.println("등급은" + grade + "입니다");
}
}
// 실행 결과
/*
이름 입력 : 조윤상
국어 점수 : 90
영어 점수 : 80
수학 점수 : 70
당신의 이름은조윤상 입니다.
국어 점수는 90,
영어 점수는 80,
수학 점수는 70
총점은240, 평균은80.0입니다.
등급은B입니다
계속하려면 아무 키나 누르십시오 . . .
*/'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test033 조건문 if ~ else if ~ else 문(3) (0) | 2020.09.02 |
|---|---|
| Test032 조건문 if ~ else if ~ else 문(2) (0) | 2020.09.02 |
| Test030 조건문 if (0) | 2020.09.02 |
| Test029 조건 연산자(삼항 연산자) (4) (0) | 2020.09.02 |
| Test028 조건 연산자(삼항 연산자) (3) (0) | 2020.09.02 |