给出一个时间,采用24小时制
如9:56,18:34。要求输出此时时针与 分针组成的的劣角
上代码:
import java.util.Scanner;
/**
* 给出时间,输出锐角
* @author hsy
*
*/
public class PinDuoDuo2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String in = sc.nextLine();
String[] s = in.split(":");
String h = s[0];
String m = s[1];
int hour = Integer.parseInt(h);
int minu = Integer.parseInt(m);
// System.out.println("hour "+hour+" minu "+minu);
double mAngle = 360*(double)minu/60;
if(hour>12)
hour -=12;
double hAngle = 360*(double)hour/12 + (360/12)*(double)minu/60;
// System.out.println(hAngle+","+mAngle);
double res = 0;
if(mAngle> hAngle){
res = min(mAngle-hAngle,hAngle+360-mAngle);
}else{
res = min(hAngle-mAngle,mAngle+360-hAngle);
}
if((int)res-res==0){
System.out.println((int)res);
}else{
System.out.println(String.format("%.1f", res));
}
}
public static double min(double a ,double b){
if(a<b)
return a;
else
return b;
}
}