2744번: 대소문자 바꾸기
영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.
www.acmicpc.net
내 풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String word = sc.nextLine();
for (int i=0; i<word.length(); i++) {
char a = word.charAt(i);
if (a >= 65 && a <= 90) {
a = (char)(a+32);
System.out.print(a);
} else if (a >= 97 && a <= 122) {
a = (char)(a-32);
System.out.print(a);
}
// System.out.println((int)a);
}
// System.out.println((int)'A');
// System.out.println((int)'Z');
// System.out.println((int)'a');
// System.out.println((int)'z');
}
}
답안
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
char[] ans = str.toCharArray();
for (int i=0; i<str.length();i++) {
if ('a' <= ans[i] && ans[i] <= 'z') {
// int dist = ans[i] - 'a';
// int upper_ascii = 'A' + dist;
ans[i] = (char)(ans[i] - 'a' + 'A');
} else {
ans[i] = (char)(ans[i] - 'A' + 'a');
}
}
System.out.println(ans);
}
}
base(소문자라면 'a' or 대문자라면 'A')로부터
몇 번째 알파벳(idx)인지를 찾아서 더한다
'백준 문제풀이 > 푼 문제' 카테고리의 다른 글
[백준 1543] 문서 검색 (0) | 2024.02.18 |
---|
2744번: 대소문자 바꾸기
영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오.
www.acmicpc.net
내 풀이
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String word = sc.nextLine(); for (int i=0; i<word.length(); i++) { char a = word.charAt(i); if (a >= 65 && a <= 90) { a = (char)(a+32); System.out.print(a); } else if (a >= 97 && a <= 122) { a = (char)(a-32); System.out.print(a); } // System.out.println((int)a); } // System.out.println((int)'A'); // System.out.println((int)'Z'); // System.out.println((int)'a'); // System.out.println((int)'z'); } }
답안
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.next(); char[] ans = str.toCharArray(); for (int i=0; i<str.length();i++) { if ('a' <= ans[i] && ans[i] <= 'z') { // int dist = ans[i] - 'a'; // int upper_ascii = 'A' + dist; ans[i] = (char)(ans[i] - 'a' + 'A'); } else { ans[i] = (char)(ans[i] - 'A' + 'a'); } } System.out.println(ans); } }
base(소문자라면 'a' or 대문자라면 'A')로부터
몇 번째 알파벳(idx)인지를 찾아서 더한다
'백준 문제풀이 > 푼 문제' 카테고리의 다른 글
[백준 1543] 문서 검색 (0) | 2024.02.18 |
---|