본문 바로가기

코드업(CodeUp)/기초 100제

[코드업/자바] 기초 100제 - 시분초 입력받아 분만 출력하기

1026 : [기초-입출력] 시분초 입력받아 분만 출력하기

1. 입력되는 시:분:초 에서 분만 출력해보자.

참고
int h, m, s;
scanf("%d:%d:%d", &h, &m, &s);

를 실행하면 콜론을 사이에 둔 형식으로 입력되어, h, m, s에 각각 정수값만 저장된다.

 

2. 시 분 초가
시:분:초 형식으로 입력된다.

 

3. 분만 출력한다.

ex)

입력 : 17:23:57

출력 : 23


문제 내용은 C언어를 활용하는 것이지만 자바를 사용하는 사람에게는 해당사항이 되지 않는다.

그러면 어떻게 해야할까?

생각한 방법은 문자열 형태로 받아와서 ":(콜론)" 부분으로 나눠서 구분하면 되기때문에 split() 메소드를 사용하여 배열형태로 저장한다.

그리고 분단위 숫자 위치는 바뀌지않기 때문에 출력할 때 인덱스 번호를 지정해줘도 무방한다. 

하지만 숫자형태로 출력해야하기 때문에 출력하는 문자열을 정수형으로 바꾼다.

import java.util.*;

public class Exercise {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String str = sc.nextLine();
		String[] arr = str.split(":");
		
		System.out.println(Integer.valueOf(arr[1]));
	}
}

.

.

728x90
반응형