코테/백준
[백준/JAVA] 2744번: 대소문자 바꾸기
imname1am
2023. 3. 8. 00:52
반응형
🔺 문제
2744번: 대소문자 바꾸기
영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.
www.acmicpc.net
🔺 코드
import java.util.*;
public class Main
{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
String result = "";
int tmp;
for(int i=0 ; i < str.length() ; i++) {
tmp = (int)str.charAt(i);
if(65<=tmp && tmp<=90) result += (char)(tmp + 32); // 대문자인 경우
else result += (char)(tmp - 32); // 소문자인 경우
}
System.out.println(result);
}
}
내가 너무나도 취약한 아스키코드!
♦ 대문자 : 65~90
♦ 소문자 : 97~122
♦ 대소문자 차이 : 32 (97-65)
- 문자를 하나씩 받고 아스키 코드 값을 받는다. (14번째 줄)
- 이 문자가 대문자이면, 소문자로 변환하게 32를 더한다. (16번째 줄)
- 이 문자가 소문자이면, 대문자로 변환하게 32를 뺀다. (17번째 줄)
아스키코드 이제는 진짜 외울 때가 되었다!
(참고)
[알고리즘] 아스키코드를 사용한 문자열 변환 (Java)
[알고리즘] 아스키코드를 사용한 문자열 변환 (Java) 알고리즘에서 사용하는 아스키코드에 대해 알아보자. ASCII는 영문 알파벳을 사용하는 대표적인 문자 인코딩이다. 아스키코드 33 ! 느낌표 34 "
rypro.tistory.com
반응형