JAVA
-
Test016 자바의 기본 입출력 java.util.Scanner2020.09.01
-
Test015 자바의 기본 입출력 System.out.printf()2020.09.01
-
Test014 자바의 입출력 System.in.read2020.09.01
-
Test013 자바의 입출력 BufferedReader(퀴즈2)2020.09.01
-
Test012 자바의 입출력 BufferedReader(퀴즈1)2020.09.01
-
Test011 자바의 입출력 BufferedReader2020.09.01
Test016 자바의 기본 입출력 java.util.Scanner
※ java.util.Scanner
단락 문자 패턴을 사용하여 입력을 토큰에 따라 분할하며, 디폴트(default)로 사용되는 단락문자는 공백이다.
작성된 다음 토큰은 "next()" 메소드를 사용 다른 형태(자료형)의 값으로 변환할 수 있다.
import java.util.Scanner;
public class Test016
{
public static void main(String[] args)
{
// Scanner 인스턴스 생성
Scanner sc = new Scanner(System.in);
// 주요 변수 선언
String name; //-- 이름
int kor, eng, mat; //-- 국어, 영어, 수학 점수
// 연산 및 처리
System.out.print("이름을 입력하세요 : ");
name = sc.next();
System.out.print("국어 점수 입력 : ");
kor = sc.nextInt();
System.out.print("영어 점수 입력 : ");
eng = sc.nextInt();
System.out.print("수학 점수 입력 : ");
mat = sc.nextInt();
// 결과 출력
System.out.println();
System.out.println(">> 이름 : " + name);
System.out.println(">> 총점 : " + (kor + eng + mat));
}
}
//실행 결과
/*
이름을 입력하세요 : 조윤상
국어 점수 입력 : 90
영어 점수 입력 : 80
수학 점수 입력 : 70
>> 이름 : 조윤상
>> 총점 : 240
계속하려면 아무 키나 누르십시오 . . .
*/'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test018 자바의 기본 입출력 java.util.Scanner(퀴즈2) (0) | 2020.09.01 |
|---|---|
| Test017 자바의 기본 입출력 java.util.Scanner(퀴즈1) (0) | 2020.09.01 |
| Test015 자바의 기본 입출력 System.out.printf() (0) | 2020.09.01 |
| Test014 자바의 입출력 System.in.read (0) | 2020.09.01 |
| Test013 자바의 입출력 BufferedReader(퀴즈2) (0) | 2020.09.01 |
Test015 자바의 기본 입출력 System.out.printf()
※
print() 메소드는 모니터에 데이터를 출력할 때 사용하는 함수이다.
printf() 메소드도 마찬가지로 모니터에 데이터를 출력하는 함수이나
print메소드 + f(formatted) 즉, 포맷팅 기능이 더해져 사용자가 원하는 형태로 출력하기 위해
1. 서식문자를 지정할 수 있다.
2. 자릿수를 지정할 수 있다.
3. 플래그를 지정할 수 있다.
printf()의 서식을 살펴보자면 아래와 같다.

출력하고자하는 데이터를 자릿수를 잡고 출력을 해줄수 있다.


%[자릿수]만큼 의 자리를 할당하여 그 공간내에서 오른쪽부터 출력을 해준다. 남는 자리는 공백으로 채워지게 된다.


public class Test015
{
public static void main(String[] args)
{
System.out.print("AAA");
System.out.print("BBB");
System.out.print("CCC\n"); //-- "\n" 개행
//--==>> AAABBBCCC
//System.out.print();
//--==>> 에러 발생(컴파일 에러)
System.out.println(); // 개행
System.out.printf("12345678901234567890");
System.out.printf("12345678901234567890\n"); //-- "\n" 개행
System.out.printf("12345678901234567890%n"); //-- "%n" 개행
//System.out.printf();
//--==>> 에러 발생(컴파일 에러)
System.out.printf("%d + %d = %d\n", 10, 20, 30);
//--==>> 10 + 20 = 30
System.out.printf("%d\n", 123);
System.out.printf("%10d\n", 123);
System.out.printf("%8d\n", 1234);
System.out.printf("%010d\n", 123);
//--==>> 123
// 123
// 1234
// 0000000123
System.out.printf("%d\n", 365);
System.out.printf("%d\n", +365);
//--==>> 365
// 365
System.out.printf("%+d\n", 365);
System.out.printf("+%d\n", 365);
//--==>> +365
// +365
System.out.printf("%d\n", 365);
System.out.printf("%d\n", -365);
//--==>> 365
// -365
//System.out.printf("%-d\n", 365);
//--==>> 에러 발생(런타임 에러)
System.out.printf("-%d\n", 365);
//--==>> -365
System.out.printf("%(d\n", -365);
System.out.printf("%(d\n", 365);
//--==>> (365)
// 365
//System.out.printf("%d\n",'A');
//--==>> 에러 발생(런타임 에러)
System.out.printf("%c\n", 'A');
//--==>> A
//System.out.printf("%c\n", "ABCD");
//--==>> 에러 발생(런타임 에러)
System.out.printf("%s\n", "ABCD");
//--==>> ABCD
System.out.printf("%h\n", 365);
//--==>> 16d (16진수)
System.out.printf("%o\n", 24);
//--==>> 30 (8진수)
System.out.printf("%b\n",true);
System.out.printf("%b\n",false);
//--==>> true
// false
System.out.printf("%f\n", 123.23);
//--==>> 123.230000
System.out.printf("%.2f\n", 123.23);
//--==>> 123.23
System.out.printf("%.2f\n", 123.231);
System.out.printf("%.2f\n", 123.236);
//--==>> 123.23
// 123.24
System.out.printf("%8.2f\n", 123.236);
//--==>>__123.24
System.out.printf("%2.2f\n", 123.236);
//--==>> 123.24
}
}
// 실행 결과
/*
AAABBBCCC
1234567890123456789012345678901234567890
12345678901234567890
10 + 20 = 30
123
123
1234
0000000123
365
365
+365
+365
365
-365
-365
(365)
365
A
ABCD
16d
30
true
false
123.230000
123.23
123.23
123.24
123.24
123.24
계속하려면 아무 키나 누르십시오 . . .
*/'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test017 자바의 기본 입출력 java.util.Scanner(퀴즈1) (0) | 2020.09.01 |
|---|---|
| Test016 자바의 기본 입출력 java.util.Scanner (0) | 2020.09.01 |
| Test014 자바의 입출력 System.in.read (0) | 2020.09.01 |
| Test013 자바의 입출력 BufferedReader(퀴즈2) (0) | 2020.09.01 |
| Test012 자바의 입출력 BufferedReader(퀴즈1) (0) | 2020.09.01 |
Test014 자바의 입출력 System.in.read
※ "System.in.read()"메소드는 한 문자만 가져온다.
단, 하나의 문자를 입력받아 입력받은 해당 문자의 ASCII Code 값(정수 형태)을 반환하게 된다.
실행 예)
한 문자 입력 : A
한 자리 정수 입력 : 7
>> 입력한 문자 : A
>> 입력한 정수 : 7
계속하려면 아무 키나 누르세요...
import java.io.IOException;
public class Test014
{
public static void main(String[] args) throws IOException
{
// 주요 변수 선언
char ch; //입력받을 문자
int n; //입력받을 한자리 정수
char temp;
// 연산 및 처리
System.out.print("한 문자 입력 : ");
ch = (char)System.in.read();
System.in.skip(2);
System.out.print("한 자리 정수 입력 : ");
temp = (char)System.in.read();
// 결과 출력
System.out.println("\n >> 입력한 문자 : " + ch);
System.out.println("\n >> 입력한 정수 : " + temp);
/*
// 주요 변수 선언
char ch; //입력받을 문자
int n; //입력받을 한자리 정수
// 연산 및 처리
System.out.print("한 문자 입력 : ");
ch = (char)System.in.read();
System.in.skip(2);
System.out.print("한 자리 정수 입력 : ");
n = System.in.read();
// 결과 출력
System.out.println("\n >> 입력한 문자 : " + ch);
System.out.println("\n >> 입력한 정수 : " + (n-48));
*/
}
}
// 실행 결과
/*
한 문자 입력 : A
한 자리 정수 입력 : 7
>> 입력한 문자 : A
>> 입력한 정수 : 7
계속하려면 아무 키나 누르십시오 . . .
*/
'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test016 자바의 기본 입출력 java.util.Scanner (0) | 2020.09.01 |
|---|---|
| Test015 자바의 기본 입출력 System.out.printf() (0) | 2020.09.01 |
| Test013 자바의 입출력 BufferedReader(퀴즈2) (0) | 2020.09.01 |
| Test012 자바의 입출력 BufferedReader(퀴즈1) (0) | 2020.09.01 |
| Test011 자바의 입출력 BufferedReader (0) | 2020.09.01 |
Test013 자바의 입출력 BufferedReader(퀴즈2)
※ 사용자로부터 이름, 국어점수, 영어점수, 수학점수를 입력받아 이름과 총점을 출력하는 프로그램을 구현한다.
실행 예)
이름을 입력하세요 : 조윤상
국어 점수 입력 : 90
영어 점수 입력 : 80
수학 점수 입력 : 70
====[결과]====
이름 : 조윤상
총점 : 240
계속하려면 아무 키나 누르세요...
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Test013
{
public static void main(String[] args) throws IOException
{
// BufferedReader 인스턴스 생성
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
// BufferedReader br = new BufferedReader(new InputStreamReader(System.in) 와 같은 구문
// 주요 변수 선언
String strName; //-- 이름 변수
int nKor, nEng,nMat; //-- 국어, 영어, 수학 점수 변수
int nTot; //-- 총점 변수
// 추가 변수 선언
String strTemp; //-- 문자열 데이터를 임시로 저장할 변수
// 연산 및 처리
// ① 사용자에게 안내 메세지 출력 → 이름 입력 안내
System.out.print("이름을 입력하세요 : ");
// ② 사용자가 입력한 값(외부 데이터)를 변수에 담아내기
strName = br.readLine();
// ③ 사용자에게 안내 메세지 출력 → 국어점수 입력 안내
System.out.print("국어 점수 입력 : ");
// ④사용자가 입력한 값을 정수 형태로 변환한 후 nKor 변수에 담아내기
strTemp = br.readLine();
nKor = Integer.parseInt(strTemp);
// ⑤ 사용자에게 안내 메세지 출력 → 영어점수 입력 안내
System.out.print("영어 점수 입력 : ");
// ⑥ 사용자가 입력한 값을 정수 형태로 변환한 후 nEng 변수에 담아내기
strTemp = br.readLine();
nEng = Integer.parseInt(strTemp);
// ⑦ 사용자에게 안내 메세지 출력 → 수학점수 입력 안내
System.out.print("수학 점수 입력 : ");
// ⑧ 사용자가 입력한 값을 정수 형태로 변환한 후 nMat 변수에 담아내기
strTemp = br.readLine();
nMat = Integer.parseInt(strTemp);
// ⑨ 각 점수 변수에 담겨있는 데이터(입력 데이터)들을
// 종합하여 덧셈 연산을 수행하는 과정을 거쳐 총점을 산출하고
// 그 결과를 총점 변수에 담아내기
nTot = nKor + nEng + nMat;
// 결과 출력
//System.out.println(); // 개행
System.out.println("====[결과]====");
//System.out.println("이름 : " + strName);
//System.out.println("이름 : ○\n" + strname);
System.out.printf("이름 : %s\n", strName);
System.out.printf("총점 : %d\n", nTot);
}
}
// 실행 결과
/*
이름을 입력하세요 : 조윤상
국어 점수 입력 : 90
영어 점수 입력 : 80
수학 점수 입력 : 70
====[결과]====
이름 : 조윤상
총점 : 240
계속하려면 아무 키나 누르십시오 . . .
*/'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test015 자바의 기본 입출력 System.out.printf() (0) | 2020.09.01 |
|---|---|
| Test014 자바의 입출력 System.in.read (0) | 2020.09.01 |
| Test012 자바의 입출력 BufferedReader(퀴즈1) (0) | 2020.09.01 |
| Test011 자바의 입출력 BufferedReader (0) | 2020.09.01 |
| Test 010 변수와 자료형(퀴즈) (0) | 2020.09.01 |
Test012 자바의 입출력 BufferedReader(퀴즈1)
※ 삼각형의 밑변의 길이와 높이를 사용자로부터 입력받아 이 삼각형의 넓이를 구하는 프로그램을 구현한다.
실행 예)
■ 삼각형의 넓이 구하기 ■
- 삼각형의 밑변 입력 : 3
- 삼각형의 높이 입력 : 5
>> 밑변이 3, 높이가 5인 삼각형의 넓이 : xxxx
계속하려면 아무 키나 누르세요...
※ 삼각형의 넓이 = 밑변 * 높이 / 2
※ 사용자로부터 데이터를 입력받아 처리 → BufferedReader 활용
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Test012
{
public static void main(String[] args) throws IOException
{
// BufferedReader 인스턴스 생성
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 주요 변수 선언
int underLength; // 밑변
int height; // 높이
double area; // 넓이
// 연산 및 처리
// ① 사용자에게 안내 메세지 출력
System.out.println("■ 삼각형의 넓이 구하기 ■");
System.out.print(" - 삼각형의 밑변 입력 : ");
// ② 사용자가 입력한 데이터를 정수 형태로 변환한 후
// 변수 underLength 에 담아내기
underLength = Integer.parseInt(br.readLine());
// ③ 다시 사용자에게 안내 메세지 출력
System.out.print(" - 삼각형의 높이 입력 : ");
// ④ 사용자가 입력한 데이터를 정수 형태로 변환한 후
// 변수 height 에 담아내기
height = Integer.parseInt(br.readLine());
// ⑤ 삼각형의 넓이를 구하는 연산 처리
area = underLength * height / 2.0; // check~!!!
// 정수형 정수형 정수형 → 정수 기반 연산 → 몫만 취하는 연산
// 정수형 정수형 실수형 → 실수 기반 연산 → 나머지 포함 연산
// ※ 실수 자료형이 결과값으로 나오는 과정에서
// 실수 기반의 연산이 필요한 상황이다.
// 정수형 "2" 가 아닌 실수형 "2.0" 으로 나눗셈 연산을 수행하게 되면
// 이 연산은 실수 기반으로 처리된다.
// 결과 출력
System.out.println(); // 개행
//System.out.print(); // 에러 발생
System.out.printf(">> 밑변이 %d, 높이가 %d인 삼각형의 넓이 : %.2f\n",underLength,height,area);
}
}
// 실행 결과
/*
■ 삼각형의 넓이 구하기 ■
- 삼각형의 밑변 입력 : 3
- 삼각형의 높이 입력 : 5
>> 밑변이 3, 높이가 5인 삼각형의 넓이 : 7.50
계속하려면 아무 키나 누르십시오 . . .
*/'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test014 자바의 입출력 System.in.read (0) | 2020.09.01 |
|---|---|
| Test013 자바의 입출력 BufferedReader(퀴즈2) (0) | 2020.09.01 |
| Test011 자바의 입출력 BufferedReader (0) | 2020.09.01 |
| Test 010 변수와 자료형(퀴즈) (0) | 2020.09.01 |
| Test007~009 변수와 자료형 (0) | 2020.09.01 |
Test011 자바의 입출력 BufferedReader
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Test011
{
public static void main(String[] args) throws IOException
{
// BufferedReader 인스턴스 생성
// BufferedReader br = new BufferedReader( 번역기( System.in) );
BufferedReader br = new BufferedReader( new InputStreamReader ( System.in) );
// 주요 변수 선언
int r; //-- 반지름
final double PI = 3.141592; //-- 원주율
double a, l; //-- 넓이, 둘레
// 연산 및 처리
// ① 사용자에게 안내 메세지 출력
System.out.print("원의 반지름 입력 : ");
// ② 사용자가 입력한 값을 받아와 반지름 변수 r 에 담아내기
// BufferedReader 안에... readLine() 메소드... 외부 입력값 가져오기
// r = br.readLine();
// r = "30";----------------(x)
// r parseInt(); → 매개변수로 넘겨받은
// 숫자 모양의 문자열 데이터를 정수형으로 변환
// r = Integer.parseInt() → Integer 에 들어있는 parseInt()
// r = Integer.parseInt("30");
r = Integer.parseInt(br.readLine());
// r = Integer.parseInt(br.readLine());
// r = 30;
//-- 사용자가 입력한 값을 BufferedReader(br)의 "readLine()"
// 메소드를 활용하여 읽어들인 후
// 그 값을 "Integer.parse()" 를 통해 숫자형(정수형)으로 변환한 후
// 정수 형태의 반지름 변수 r 에 담아내기
// ③ 원의 넓이 및 둘레 연산
a = r * r * PI;
l = r * 2 * PI;
// 결과 출력
/*
System.out.println(">> 넓이 : " + a);
System.out.println(">> 둘레 : " + l);
*/
//System.out.printf("넓이 : %f \n", a);
//System.out.printf("둘레 : %f \n", l);
System.out.printf("넓이 : %.2f \n",a);
System.out.printf("둘레 : %.2f \n",l);
//-- "%f" 는 실수형을 담아내는 옵션 문자
// "%.2f" 는 소수점 이하 두 번째 자리까지 표현하겠다는 의미
// → 세 번째 자리에서 반올림
}
}
// 실행 결과
/*
원의 반지름 입력 : 30
넓이 : 2827.43
둘레 : 188.50
계속하려면 아무 키나 누르십시오 . . .
*/
'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글
| Test013 자바의 입출력 BufferedReader(퀴즈2) (0) | 2020.09.01 |
|---|---|
| Test012 자바의 입출력 BufferedReader(퀴즈1) (0) | 2020.09.01 |
| Test 010 변수와 자료형(퀴즈) (0) | 2020.09.01 |
| Test007~009 변수와 자료형 (0) | 2020.09.01 |
| Test006. 형변환 및 접미사 활용 (0) | 2020.08.30 |