일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- SQL코딩테스트
- HashMap
- 프로그램서
- 안드로이드 스튜디오
- 27866
- Java
- M1
- Iterator
- 코딩테스트
- 프로그래머스
- Eclipse
- 문자열 숫자 변환
- JDK
- OAuth 인증
- 알고리즘
- 해시
- 노선별 평균 역 사이 거리 조회하기
- homebrew
- 포맷 지정자
- sort정렬
- github
- MAC OS
- 핸드폰 가리기
- 자바
- 가격이 제일 비싼 식품의 정보 출력하기
- 백준
- mysql
- 깃허브
- 맥북
- Android Studio
- Today
- Total
개발일지
[백준 JAVA] 1000번: A+B / 1001번: A-B / 10998번:AxB / 1008번: A/B 본문
# 1000번: A+B
문제

문제 풀이

- Scanner를 사용해서 문제를 풀었다.
Scanner 사용법
import java.util.Scanner;
- import java.util.*;
java.util에 들어있는 모든 패키지를 import 하는 것이다.
- Scanner 또한 java.util에 들어있는 패키지 이므로 위 코드를 사용해 import 해준다.
Scanner in = new Scanner(System.in);
- Scanner 객체명 = new Scanner(System.in);
형식으로 작성하면 된다.
+)System.in 은 입력한 값을 Byte 단위로 읽는 것을 뜻한다.
+) 객체명에는 어느 것을 써도 상관이 없지만 다른 사람의 코드를 봤을 때 읽기 편하도록 트렌드에 맞게 써주는 것을 추천한다고 한다.
int A = in.nextInt();
int B = in.nextInt();
- 정수 A, B를 입력 받으므로 자료형을 Int형으로 입력해 준다.
String 문자열_space = in.next();
Stirng 문자열_Enter = in.nextLine();
boolean 부울 = in.nextBloolean();
byte 바이트 = in.nextByte();
short 쇼트 = in.nextShort();
int 정수 = in.nextInt();
long 롱 = in.nextLong();
double 더블형 = in.nextDouble();
float 플롯 = in.nextFloat();
- 입력한 데이터가 변수 자료형에 위반되면
<Exception in thread "main: java.util.InputMismatchException>
이라는 에러가 뜬다.
- in.nextInt()에 자료형 범위를 넘어가는 수를 입력하거나 문자를 입력하는 경우
- in.nextBoolean()에 True, False 같은 boolean 자료형 외의 문자, 숫자를 입력하는 경우
- in.next(): 문자열 입력시 공백 전까지만 받음
- in.nextLine(): 문자열 입력시 Enter 입력 전까지만 받음
+) next()의 경우 에러가 발생할 수 있는 경우가 많아 대부분의 문제에서는 행 단위로 입력받는 일이 다수이니 문자열 형태로는 in.nextLine()을 쓴다고 한다.
in.close();
-close 쓰는 이유
scanner = new Scanner(System.in); -> 프로세스 표준 입력을 가지고 옴.
Scanner 객체는 OS 에서 제공한 표준 입력을 계속 잡고 있게 되죠.
사용을 끝냈으니 이걸 해제해서 되돌려 준 것이다.
# 1001번: A-B
문제

문제 풀이

# 10998번:AxB
문제

문제 풀이

# 1008번: A/B
문제

문제 풀이

- 문제를 보면 상대오차가 10^-9여야 한다고 나와있다.
- 오차 범위를 벗어나지 않게 하기 위해 꼭!! double형으로 출력을 해줘야 한다.


- 처음에 Int형으로 선언 받았다가 문제를 틀렸다.
- Int형으로 선언을 받을 경우 나누어 떨어지는 수는 상관이 없지만 오른쪽과 같이 나누어 떨어지지 않는 경우 값이 달라질 수 있다.
참고)
https://okky.kr/articles/775363
'Java > 알고리즘 공부' 카테고리의 다른 글
[백준 JAVA] 2884번: 알람시계 / 2525번: 오븐 시계 / 2480번: 주사위 세개 (0) | 2023.01.27 |
---|---|
[백준 JAVA] 2588번: 곱셈 (3) | 2022.12.20 |
[백준 JAVA] 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 (1) | 2022.12.19 |
[백준 JAVA] 2557번: Hello World (0) | 2022.12.18 |
문제를 풀기에 앞서... (2) | 2022.12.17 |