💡 1021번 charAt()
💡 1024번 toCharArray()
: 문자열을 char형 배열로 바꿔준다. 반환되는 배열의 길이는 문자열의 길이와 같다.
💡 1025번 Math.pow(밑,지수)
: 제곱승 표현
💡 1029번 실수 반올림 하기
System.out.println(String.format("%.11f", input));
System.out.printf("%.11f", input);
입력:
한 단어가 입력된다.(단, 단어의 길이는 50자 이하이다.)
문자를 50개 저장하기 위해서는 char data[51] 로 선언하면 된다.
char data[51]="";
scanf("%s", data);
를 실행하면, data[51] 에 한 단어가 저장된다.
public class Q1021 {
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++) {
System.out.print(input.charAt(i));
}
}
}
입력: 공백이 포함되어 있는 한 문장이 입력된다. 단, 입력되는 문장은 여러 개의 단어로 구성되고, 엔터로 끝나며,최대 길이는 2000 문자를 넘지 않는다.
예시: Programming is very fun!!
public class Q1022 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
System.out.println(input);
}
}
입력: 실수 1개가 입력된다.(단, 입력값은 절댓값이 10000을 넘지 않으며, 소수점 이하 자릿수는 최대 6자리까지이고 0이 아닌 숫자로 시작한다.)
예시:
1.414213
출력 예시
1
414213
public class Q1023 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
String[] inArr = input.split("\\.");
System.out.printf("%d\n%d",
Integer.valueOf(inArr[0]),
Integer.valueOf(inArr[1])
);
}
}
입력:Boy
출력:
'B'
'o'
'y'
public class Q1024 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
br.close();
char [] chars = input.toCharArray();
for (char c : chars ) {
System.out.printf("\'%c\'\n",c);
}
}
}
입력: 다섯 자리의 정수 1개를 입력받아 각 자리별로 나누어 출력한다. (단, 10,000 <= 입력받는 수 <= 99,999 )
입력 예시
75254
출력: 각 자리의 숫자를 분리해 한 줄에 하나씩 [ ]속에 넣어 출력한다.
출력 예시
import java.util.Scanner;
public class Q1025 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int input = sc.nextInt();
sc.close();
for (int i = 4; i > 0; i--) {
System.out.println("[" + (input / (int) Math.pow(10, i)) * (int) Math.pow(10, i) + "]");
input = input % (int) Math.pow(10, i);
}
System.out.print("[" + input + "]");
}
}
입력 예시
17:23:57
출력 예시
23
public class Q1026 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
br.close();
String [] inArr = input.split(":");
System.out.printf("%d",Integer.valueOf(inArr[1]));
}
}
년월일(yyyy.mm.dd)를 입력받아,
일월년(dd-mm-yyyy)로 출력해보자.
(단, 한 자리 일/월은 0을 붙여 두자리로, 년도도 0을 붙여 네자리로 출력한다.)
입력 예시
2014.07.15
출력 예시
15-07-2014
public class Q1027 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
br.close();
String [] strArr = input.split("\\.");
int [] intArr = new int[3];
for (int i=0; i < intArr.length; i++) { // split 담은 배열의 값을 int로 바꿔 int 배열에 넣는 for문
intArr[i] = Integer.parseInt(strArr[i]);
}
System.out.printf("%02d-%02d-%04d",intArr[2],intArr[1],intArr[0]);
}
}
정수 1개를 입력받아 그대로 출력해보자.
(단, 입력되는 정수의 범위는 0 ~ 4,294,967,295 이다.)
참고
int 형으로 변수 : -2147483648 ~ +2147483647 범위의 정수 저장/처리
unsigned int 데이터형을 사용하면 0 ~ 4294967295 범위의 정수를 저장할 수 있다.
입력 예시
2147483648
출력 예시
2147483648
public class Q1028 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long input = sc.nextLong();
sc.close();
System.out.println(input);
}
}
참고
float
: +- 3.410-38 ~ +- 3.41038 범위의 실수를 저장할 수 있다.double
: +- 1.710-308 ~ +- 1.710308 범위의 실수를 저장할 수 있다.입력
소수점 아래 숫자가 11개 이하인 실수 1개가 입력된다.
(단, 입력되는 실수의 범위는 +- 1.710-308 ~ +- 1.710308 이다.)
출력
입력된 실수를 소수점 이하 11자리까지 반올림하여 출력한다.
입력 예시
3.14159265359
출력 예시
3.14159265359
import java.util.Scanner;
public class Q1029 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double input = sc.nextDouble();
sc.close();
// System.out.println(String.format("%.11f", input));
System.out.printf("%.11f", input);
}
}