随笔--java-一次简易自动售货机程序设计
前言
在课堂上一次性完成了老师布置的实验任务,记录一下。
一、实验内容要求
简易自动售货机程序设计
说明: (a)可多次投币,累计金额超过商品价格时,可出货并找零。 (b)完成一次交易后,自动返回初始界面。 (c)(选做)拓展功能:盘点一天的营业总额;销售商品的总数,库存剩余 商品个数等
二、代码
代码如下:
注意自己修改包名ac和类名Shop
package ac;
import java.util.Scanner;
public class Shop {
public static int price_way(int price) {
int result=price,in_money;
System.out.println("请投币:
");
Scanner sc = new Scanner(System.in);
in_money = sc.nextInt();
result=price-in_money;
while(result>0){
System.out.println("单价:"+price+",已付:"+(price-result)+",请再投币。。。
");
in_money = sc.nextInt();
if(in_money==0) {
System.out.println("未投币,准备退币..."+(price-result)+"
");
return 0;
}
result=result-in_money;
}
System.out.println("已出货,请及时取走。。
");
System.out.println("找零:"+(0-result)+"
");
return price;
}
public static void main(String args[]) {
int nums,price,flag=1,remain1=100,remain2=100,remain3=100,total_num=0,total_price=0;
while(true) {
System.out.println("欢迎使用自动售货机");
System.out.println("【1】矿泉水 3 元,库存 "+remain1);
System.out.println("【2】纯牛奶 5 元,库存 "+remain2);
System.out.println("【3】八宝粥 7 元,库存 "+remain3);
System.out.println("【0】 退出系统 关机维护
-------------------------------------");
System.out.println("请按数字键选择商品!
");
Scanner sc = new Scanner(System.in);
// System.out.println("请输入姓名:");
nums = sc.nextInt();
switch(nums)
{
case 1 :
// System.out.println("优秀");
if(price_way(3)!=0) {
remain1=remain1-1;
total_price=total_price+3;
}
// price_way(3);
break;
case 2 :
if(price_way(5)!=0) {
remain2=remain2-1;
total_price=total_price+5;
}
break;
case 3 :
if(price_way(7)!=0) {
remain3=remain3-1;
total_price=total_price+7;
}
break;
case 0 :
System.out.println("营业结束,关机退出运行!");
flag=0;
break;
default :
System.out.println("货号选择出错!!请重新选择!
");
}
System.out.println("一天的营业总额:"+total_price+" 销售商品的总数:"+(300-remain1-remain2-remain3)+
" 商品个数矿泉水剩余:"+remain1+" 商品个数纯牛奶剩余:"+remain2+" 商品个数八宝粥剩余:"+remain3+"
");
if(flag==0) {
break;
}
}
}
}
总结
上面代码是一次性完成的,逻辑和功能上肯定可以再完善。 就这样吧,对Java不太了解,不过会python之后再学java,对象什么的也不再话下了。
