Java写出输入时间,计算出时针和分针在时钟上的夹角,并保留三位小数输出
时间: 2023-05-31 12:05:40 浏览: 185
以下是Java代码:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入时间(如12:30):");
String time = scanner.nextLine();
int hour = Integer.parseInt(time.substring(0, 2));
int minute = Integer.parseInt(time.substring(3));
double angle = Math.abs((hour % 12 + minute / 60.0) * 30 - minute * 6);
angle = Math.min(angle, 360 - angle);
System.out.printf("时针和分针在时钟上的夹角为%.3f度", angle);
}
}
```
代码解释:
1. 首先使用Scanner类获取用户输入的时间,格式为“时:分”。
2. 使用String类的substring方法将小时和分钟分别提取出来,转换为整数。
3. 根据时钟的规律,时针每小时走30度,分针每分钟走6度,因此可以计算出时针和分针在当前时间下分别所在的角度。
4. 由于时针和分针可能会相互穿过,所以需要取两者角度的绝对值和360度减去角度的较小值。
5. 最后使用printf方法将结果保留三位小数输出。
阅读全文