국비교육/국비교육 복습
Day04_condition_Test10 : 글 작성후 흐른 시간 표시 + 시간을 4자리 정수로 표시하는 방법 (★)
Luver Duck
2022. 7. 31. 19:45
(Q)작성한 게시글이 몇 초 전에 작성되었는지에 대한 값이 주어진다고 가정합니다.
'''java
int second = 150;
'''
시간을 다음 규칙에 따라 변환하여 출력하는 프로그램을 구현
-방금 전 : 작성한지 10초 이내인 글
-?초 전 : 작성한지 1분이 되지 않은 글
-?분 전 : 작성한지 1분 이상이면서 1시간이 되지 않은 글
-?시간 전 : 작성한지 1시간 이상이면서 24시간이 되지 않은 글
-?일 전 : 나머지
package condtiion;
public class Test10 {
public static void main(String[] args) {
int second = 150;
int minToSec = 60;
int hourToSec = minToSec * 60;
int dayToSec = hourToSec * 24;
int time;
if(second < minToSec) {
if(second < 10) {
time = 10;
System.out.println("방금 전");
}
else {
time = second % minToSec;
System.out.println(time + "초 전");
}
}
else if(second < hourToSec) {
time = second / minToSec;
System.out.println(time + "분 전");
}
else if(second < dayToSec) {
time = second / hourToSec;
System.out.println(time + "시간 전");
}
else {
time = second / dayToSec;
System.out.println(time + "일 전");
}
}
}
1) 시간을 매 초로 표시할 경우에는 '%' 연산을, ~시간처럼 묶음 단위 시간으로 표시할 경우 '/' 연산을 이용한다
2) 4자리 숫자로 시간을 표시할 수 있다
int Time = 1200; //입력 시간
int Hour = Time / 100; //시간 [h]
int Min = Time % 100; //분 [min]
package condtiion;
public class Test10; {
package day03;
public class Day04_condition_Test10_1 {
public static void main(String[] args) {
int minToSec = 60;
int hourToSec = minToSec * 60;
int dayToSec = hourToSec * 24;
int inTime = 1200;
int inHour = inTime / 100;
int inMin = inTime % 100;
int inTimeSec = inHour * hourToSec + inMin * minToSec;
int outTime = 1620;
int outHour = outTime / 100;
int outMin = outTime % 100;
int outTimeSec = outHour * hourToSec + outMin * minToSec;
int second = outTimeSec - inTimeSec;
int time;
if(second < minToSec) {
if(second < 10) {
time = 10;
System.out.println("방금 전");
}
else {
time = second % minToSec;
System.out.println(time + "초 전");
}
}
else if(second < hourToSec) {
time = second / minToSec;
System.out.println(time + "분 전");
}
else if(second < dayToSec) {
time = second / hourToSec;
System.out.println(time + "시간 전");
}
else {
time = second / dayToSec;
System.out.println(time + "일 전");
}
}
}