第十四次 Java作业

第十四次 Java作业,第1张

 

目录

1、飞机的加速度

2、卖苹果

​3、更近的地点

4、七星彩


1、飞机的加速度

机在跑道上加速滑行起飞,滑行时间为15.5秒,滑行距离为1050米。在起飞的整个过程中,飞机的加速度保持不变,控制台输出这个加速度。(因为飞机的初始速度为0,所以飞机的加速度等于滑行距离的2倍除以滑行时间的平方)。

代码如图所示:

运行结果如图所示: 

2、卖苹果

一苹果商卖苹果有个“不找零钱(四舍五入)”习惯,苹果售价为每500克2.49元,苹果商输入顾客购买苹果的数量后,输出这些苹果的未经四舍五入的总价格与顾客的应付金额。效果图如图所示:

代码如图所示:

运行结果如图所示: 

3、更近的地点

        把A地设为坐标原点,B地的坐标为(3.8,4.2),C地的坐标为(3.2,4.5),在不计算出结果的前提下,使用Math.min0方法输出B、C哪一个地点距A地更近。

代码如图所示:

运行结果如图所示: 

4、七星彩

        七星彩是指从0000000-9999999中选择任意7位自然号码进行投注,每注2元RMB。使用Random类模拟根据用户控制台输入的“购买的彩票数”,随机为用户生成相应数目的七星彩号码,并与当期的七星彩结果比较,最后输出中奖情况,效果图如下图所示:

 代码如下:

package DiShiSiCiJavaZuoYe;									//包名
import java.util.Random;									//导入java.util.Random包
import java.util.Scanner;									//导入java.util.Scanner包
public class QiXingCai {									//创建类
	 public static void main(String[] args) { 				//主函数
	  Scanner sc = new Scanner(System.in); 					//控制台输入
	  System.out.print("请输入您要购买的彩票数:"); 			//提示信息
	  int counts = sc.nextInt(); 							//输入“购买的彩票数”
	  Random rnd = new Random(); 							//创建随机号码对象r
	  int nums[] = new int[counts]; 						//声明一个int类型“购买彩票”的数组,用来存放购买的彩票号码
	  System.out.println("您购买的彩票号码如下:"); 			//提示信息
	  for (int i = 0; i < counts; i++) { 					//遍历“购买彩票”的数组
	   int randNum = rnd.nextInt(8999999) + 1000000; 		//7位彩票号码,范围是1000000~9999999
	   System.out.println(randNum); 						//输出随机生成的彩票号码
	   nums[i] = randNum;									//把随机生成的彩票号码插入“购买彩票”的数组
	  }
	  int useMoney = nums.length * 2;						//购买彩票花费的金额
	  System.out.println("您购买彩票的号码量:" + counts + "张,共消费:" + useMoney + "元。");//输出结果
	  int getMoney = 0; // 初始化“中奖金额”
	  int bonus = rnd.nextInt(8999999) + 1000000; 			//7位“开奖号码”,范围是1000000~9999999
	  System.out.println("本期开奖号 : " + bonus); 			//输出本期开奖号
	  String rightNum = Integer.toString(bonus); 			//类型转换
	  for (int l = 0; l < nums.length; l++) { 				//遍历由购买彩票组成的数组
	   String myNum = Integer.toString(nums[l]); 			//彩票号码
	   int series = 0; 										//初始化中“我的号码”跟开奖号一样的连续号码的组数
	   int arr[] = new int[7]; 								//声明一个int类型的数组,用来存放跟开奖号一样的连续号码的组数
	   for (int m = 0; m < 7; m++) {						//7位号码
	    String everyNum = myNum.substring(m, m + 1); 		//分别截取“我的号码”每一位上的字符串
	    String everyRightNum = rightNum.substring(m, m + 1); // 分别截取“开奖号”每一位上的字符串
	    if (everyNum.equals(everyRightNum)) { 				//判断“我的号码”跟“开奖号”每位上的号码字是否相同
	     series++; 											//条件成立时,统计“我的号码”跟开奖号一样的连续号码的组数
	    } else { 											//条件不成立时
	     if (series > 0) {									//如果有中奖的号码
	      arr[series - 1] = series;							//把中奖的号码插入号码组
	      series = 0;										//初始化中“我的号码”跟开奖号一样的连续号码的组数
	     }
	    }
	   }
	   for (int i = 0; i < arr.length; i++) { 				// 求最大的连续号码的组数
	    if (series < arr[i]) { 								//数组约束
	     series = arr[i];									//数组约束
	    }
	   }
	   if (series > 1) { 									//连续号码的组数大于1
	    switch (series) { 									//多分支语句
	    case 2: //case语句
	     System.out.println("您赢得了5元!"); 				//输出您赢得了5元!
	     getMoney += 5; 									//六等奖5元
	     break; 											//跳出循环
	    case 3:   											//case语句
	     System.out.println("您赢得了20元!");				//输出您赢得了20元!
	     getMoney += 20; 									//五等奖20元
	     break; 											//跳出循环
	    case 4:    											//case语句
	     System.out.println("您赢得了300元!");				//输出您赢得了300元!
	     getMoney += 300; 									//四等奖300元
	     break; 											//跳出循环
	    case 5: 											//case语句
	     System.out.println("您赢得了1800元!");				//输出您赢得了1800元!
	     getMoney += 1800; 									//三等奖1800元
	     break; 											//跳出循环
	    case 6:												 //case语句
	     System.out.println("您赢得了20000元!");			//输出您赢得了20000元!
	     getMoney += 20000; 								//二等奖20000元
	     break; 											//跳出循环
	    case 7: 											//case语句
	     System.out.println("您赢得了5000000元!");			//输出您赢得了5000000元
	     getMoney += 5000000; 								//一等奖5000000元
	     break; 											//跳出循环
	    }
	   }
	  }
	  System.out.println("您中奖的总金额:" + getMoney + "元。"); //总奖金
	  sc.close(); 											//关闭控制台输入
	 }
}

运行结果如图所示:

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/867036.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-12
下一篇 2022-05-12

发表评论

登录后才能评论

评论列表(0条)

保存