首页 > 编程知识 正文

时针和分针的夹角怎么计算,如何计算时针与分针的夹角

时间:2023-05-05 08:23:38 阅读:221790 作者:1212

//计算时针和分针之间的夹角

import java.lang.Math;

public class ClockAngle {

public static void main(String[] args) {

final String time="12:37";//此处可任意填写时间

int index=time.indexOf(":");//找到:的位置

if(index==-1)return;//如果不存在:则直接退出

String strHour=time.substring(0,index);//截取小时数-字符串型

String strMinute=time.substring(index+1,time.length());//截取分钟数-字符串型

if(!checkIsNum(strHour)||!checkIsNum(strMinute))return;//如果不符合时间格式,直接退出

double hour=Double.parseDouble(strHour);//截取小时数

double minute=Double.parseDouble(strMinute);//截取分钟数

if(hour<0||hour>24||minute<0||minute>59)return;//如果小时数或分钟数,不在时间范围内,直接退出

if(hour>12)hour=hour-12;

double hourAngle=360/12*(hour+minute/60);//计算此时的时针与12点整时时针位置的夹角

double minuteAngle=360*(minute/60); //计算此时的分针与12点整时分针位置的夹角

double angle = Math.abs(hourAngle-minuteAngle);//两个结果相减的绝对值即为结果(注意,此处有可能大于180度)

double result=angle>180?360-angle:angle;//如果大于180则与360度求差得到最后结果

System.out.println("当时间是 "+time+" 时,时针和分针之间的夹角是 : "+result+" 度");

}

public static boolean checkIsNum(String temp){

for(int i=0;i

if(!Character.isDigit(temp.charAt(i)))

return false;

}

return true;

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。