Java代码基础算法练习-商场购物判断-2024.04.14

任务描述:


任务要求:

代码示例:

java 复制代码
package April_2024;

import java.util.Scanner;

public class a240414 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入您购物的消费金额:");
        double amount = scanner.nextDouble(); // 读取用户输入的购物金额

        // 根据购物金额计算折扣
        double discountRate = calculateDiscountRate(amount);

        // 计算实际应付金额
        double actualAmount = amount - (amount * discountRate / 100);

        // 输出实际应付金额,保留两位小数
        System.out.printf("您实际应付的购物金额为:%.2f\n", actualAmount);
    }

    /**
     * 根据购物金额计算折扣率
     * @param amount 购物金额
     * @return 折扣率
     */
    private static double calculateDiscountRate(double amount) {
        // 使用switch结构实现折扣计算
        double discountRate;
        switch ((int) Math.ceil(amount / 1000)) { // 取整到千元,作为判断条件
            case 0:
            case 1:
                discountRate = 0; // 金额不足1600元无折扣
                break;
            case 2:
                discountRate = 5; // 满1600元但不足2400元享受5%折扣
                break;
            case 3:
                discountRate = 10; // 满2400元但不足3200元享受10%折扣
                break;
            case 4:
            case 5:
                discountRate = 15; // 满3200元但不足6400元享受15%折扣
                break;
            default: // 满6400元及以上享受20%折扣
                discountRate = 20;
                break;
        }
        return discountRate;
    }
}
相关推荐
AI人工智能+电脑小能手2 分钟前
【大白话说Java面试题 第156题】【06_Spring篇】第16题:Spring 用到了哪些设计模式?
java·spring·设计模式·代理模式·工厂模式
小弥儿2 分钟前
GitHub今日热榜 | 2026-07-05:阿里巴巴浏览器Agent上榜
学习·开源·github
‿hhh4 分钟前
Dify核心模块详解:从文本生成到智能体
人工智能·学习·microsoft·agent·上下文·记忆
gugucoding7 分钟前
28. 【C语言】通用数据操作:`void *` 与类型无关编程
c语言·开发语言
霖大侠8 分钟前
Decoupled and Reusable Adaptation for Efficient Cross-Modal Transfer
人工智能·深度学习·算法·机器学习·transformer
曹牧9 分钟前
XML 解析过程中遇到 `org.xml.sax.SAXParseException
java·开发语言
Sunsets_Red17 分钟前
浅谈博弈论
c++·学习·编程·博弈论·信息学竞赛·巴巴博弈
光影少年21 分钟前
RN 架构:JS层、原生桥接层、原生渲染层 通信原理
开发语言·javascript·架构
凉、介30 分钟前
ARMv8 架构下的刷 Cache 操作
c语言·笔记·学习·架构·嵌入式·arm