如何编写这一个题(JAVA)

设计一个电话收费程序,收费标准如下:通话在三分钟以下(包含三分钟),收0.2元;3分钟以上,每\超过一分钟(不足\一分钟按一分钟计算),收0.1元;在7:00~19:00之间按上面标准全价收费;其他时间段按半价收费。试计算某人在T时间 通话 S 分钟 的电 话费.

这就是几个if else可以解决的问题

你必须先自己完成代码,有问题才能来提问,直接提问,如果给了你答案,你就失去了一次练习的机会。

import java.util.Scanner;

public class CSDNQ7913483 {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入通话时间(hh:mm:ss):");
        String time = scanner.nextLine();
        System.out.print("请输入通话分钟数:");
        int minutes = scanner.nextInt();

        String[] timeArr = time.split(":");
        int hour = Integer.parseInt(timeArr[0]);

        double charge = 0;
        if (minutes <= 3) {
            charge = 0.2;
        } else {
            charge = 0.2 + Math.ceil((minutes - 3) / 60.0) * 0.1;
        }

        if (hour >= 7 && hour < 19) {
            System.out.println("通话时间在 7:00~19:00,收费标准为全价");
        } else {
            System.out.println("通话时间不在 7:00~19:00,收费标准为半价");
            charge /= 2;
        }

        System.out.printf("通话时间:%s,通话时长:%d 分钟,电话费用:%.2f 元\n", time, minutes, charge);
    }

}