当前位置: 首页 > article >正文

Java学习笔记2024/2/5

综合练习题

练习一:飞机票

需求:

机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。

按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。

package com.angus.comprehensiveExercise;
​
import java.util.Scanner;
​
public class test1 {
    public static void main(String[] args) {
        //需求:
        //
        //• 机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。
        //
        //• 按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。
​
        //输入机票原价、月份和头等舱或经济舱
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入机票原价");
        int price0 = scanner.nextInt();
        System.out.println("请输入月份:1~12");
        int month = scanner.nextInt();
        System.out.println("请输入头等舱: 0或经济舱: 1");
        int vip = scanner.nextInt();
​
        int price = 0;
​
        //旺季(5-10月)
        if (month >= 5 && month <= 10) {
​
            //头等舱9折,经济舱8.5折
            price = getPrice(vip, price, price0, 0.9, 0.85);
//        price = getPrice(price0,0,0.9,0.85);
​
        } else if ( (month >= 11 && month <= 12) || (month >=1 && month <=4) ) { //淡季(11月到来年4月)
​
            //头等舱7折,经济舱6.5折
            price = getPrice(vip, price, price0, 0.7, 0.65);
//         price = getPrice(price0,vip,0.7,0.65);
​
        } else {
            System.out.println("请输入正确的月份");
        }
​
        System.out.println("最终价格为:" + price);
​
        System.out.println("^^");
    }
​
    //卧槽这个抽取方法碉堡了
    public static int getPrice(int vip, int price, int price0, double x, double x1) {
        if (vip == 0) {
            price = (int) (price0 * x);
        } else if (vip == 1) {
            price = (int) (price0 * x1);
        } else {
            System.out.println("只能输入数字0或1");
        }
        return price;
    }
​
//    1.干啥?把重复性代码变为一个方法,根据原价,两个折扣和vip座位来计算最终结果
//    2.需要啥?原价,vip座位,两个折扣
//    3.返回否?返
//    public static int getPrice(int price0,int vip,double vip0,double vip1) {
//        int price = 0;
//        if (vip == 0) {
//            price = (int)(price0 * vip0);
//        } else if (vip == 1) {
//            price = (int)(price0 * vip1);
//        } else {
//            System.out.println("只能输入数字0或1");
//        }
//
//        return price;
//    }
​
}
//显示方法形参快捷键 -> Ctrl + P
//自动抽取方法快捷键 -> Ctrl + Alt + M

练习二:打印素数

判断101~200之间有多少个素数,并输出所有素数。

备注:素数就是质数

package com.angus.comprehensiveExercise;
​
public class test2 {
    public static void main(String[] args) {
        //判断101~200之间有多少个素数,并输出所有素数。
        //备注:素数就是质数
        //思路一:判断1~这个数之间有没有数能够整除这个数,有就false,无就true,然后加个循环修改一下
        //思路二:简化思路一,不然次数太多效率太低,判断1~这个数之间有没有数能够整除这个数的平方根,有就false,无就true
​
        //使用思路一,还没学会用一行代码求出这个数的平方根
        //先判断7是不是一个素数
        //2~6看看有没有能整除7
        int count = 0;
        for (int i = 101; i <= 200; i++) {
​
            boolean flag = true; //flag要放在里面,不然只执行一次,flag的true就没了
            for (int j = 2; j < i; j++) {
                if (i % j == 0){
                    flag = false;
                    break;
                }
            }
​
            if (flag) {
                System.out.println(i + "是素数");
                count++;
            }
        }
        System.out.println("有" + count + "个");
        
        System.out.println("^^");
    }
}

http://www.kler.cn/a/229984.html

相关文章:

  • 2024年12月计划(ue5太阳系+ue独立游戏+freex+GPU精粹泛读催眠)
  • hive的cascade使用解释
  • Springboot 实现Server-Sent Events
  • 网站布局编辑器前端开发:设计要点与关键考量
  • 基于SpringBoot的工程教育认证的计算机课程管理系统【附源码】
  • 视频截断,使用 FFmpeg
  • arch linux python venv
  • 使用MATLAB驱动USRP-N320实现OFDM自收自发
  • 112 C++ STL 函数对象回顾,系统函数对象以及范例
  • 微服务限流(漏桶算法、令牌桶算法)
  • 时间序列(Time-Series)FourierCorrelation.py代码解析
  • MongoDB 字段中数据类型不一致序列化异常排查与处理
  • 20240206在WIN10下下载安装RX580的驱动程序
  • 新概念英语第二册(56)
  • leetcode(双指针)283.移动零(C++)DAY3
  • C++多线程:this_thread 命名空间
  • 瑞_23种设计模式_原型模式
  • 京东广告算法架构体系建设--大规模稀疏场景高性能训练方案演变
  • UE5 虚幻游戏报错常用解决方法(幻兽帕鲁UE5报错)
  • 关于ZYZ旋转和XYZ旋转
  • 介绍 MSTest Runner – CLI、Visual Studio 等
  • 前端实现搜索框筛选
  • 【DDD】学习笔记-数据模型与对象模型
  • 微信小程序for循环嵌套
  • 使用STM32 HAL库配置和控制外设接口
  • 【SQL高频基础】1141.查询近30天活跃用户数