Algorithm
[Algorithm] 백준 11654번 : 아스키코드
펭귄코기
2023. 3. 6. 23:31
문제
알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오.
입력
알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다.
출력
입력으로 주어진 글자의 아스키 코드 값을 출력한다.
풀이
먼저 가장 간단하게는 scanner로 입력받아 charat 해서 string을 char 타입으로 자른다
그리고 int에 저장해서 아스키코드를 찾는다
그런데 풀이법을 보니 다른 방법이 있어 아래 적어본다
scanner말고 system.in을 이용해서 아스키코드를 찾는것이였다
system.in 은 byte 값으로 문자 한 개만 읽으면서 해당 문자에 대응되는 아스키코드 값을 저장할 수 있다
그리고 반드시 주의해야 할 점은 예외처리를 해주어야한다
IOException (java.io 패키지를 import 해야함) 로 메인 옆에 써주어도 되고
그냥 Exception 으로 처리해도 된다
코드
1. scanner를 이용해서 풀이
import java.io.IOException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
// 아스키코드로 변환하기
int ch = sc.next().charAt(0);
System.out.println(ch);
}
}
2. system.in을 이용해서 풀이
import java.io.IOException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws IOException {
int a = System.in.read();
System.out.print(a);
}
}