Algorithm (Java)/문제풀이
[자바/ Java] 백준 2744 - 대소문자 바꾸기
무럭무럭새싹
2023. 3. 20. 10:17
[백준 2744] 대소문자 바꾸기
https://www.acmicpc.net/problem/2744
2744번: 대소문자 바꾸기
영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.
www.acmicpc.net
코드1:
- Character.toUpperCase(char)/ toLowerCase(char) 메소드
- System.out.print로 한 단어씩 이어서 출력
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
for(int i=0; i<input.length(); i++){
char ch = input.charAt(i);
if('a' <= ch && ch <= 'z') System.out.print(Character.toUpperCase(ch));
else System.out.print(Character.toLowerCase(ch));
}
}
}
코드2:
- Character.toUpperCase(char)/ toLowerCase(char) 메소드
- toCharArray를 이용하여 char형배열을 채운 후 출력
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
char[] charArray = input.toCharArray();
for(int i=0; i<input.length(); i++){
char ch = input.charAt(i);
if('a' <= ch && ch <= 'z') charArray[i] = Character.toUpperCase(ch);
else charArray[i] =Character.toLowerCase(ch);
}
System.out.println(charArray);
}
}
코드3:
- 소문자 ->대문자: 해당 문자의 아스키코드에 'A'-'a' 값을 더하기
- 대문자 ->소문자: 해당 문자의 아스키코드에 'a' - 'A' 값을 더하기
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
char[] charArray = input.toCharArray();
for(int i=0; i<input.length(); i++){
char ch = input.charAt(i);
if('a' <= ch && ch <= 'z') charArray[i] = (char)(ch +'A'-'a');
else charArray[i] = (char)(ch +'a'-'A');
}
System.out.println(charArray);
}
}