2019年1月2日;第三章循环结构
本次课程所有的编译程序下载地址:
链接:https://pan.baidu.com/s/1sGXmEf7t8Ldvg_GmsLgOQg
提取码:9pcc
复制这段内容后打开百度网盘手机App,操作更方便哦
一、作业
1、编写摇塞子游戏,要求循环操作;
编写如下:
//此游戏为自动摇骰子并猜测骰子大小的游戏,自动判定输赢,若金额大于500,循环骰子并输出与猜测结果不同的功能,最后提供充值功能;
import java.util.Scanner;
public class LukyBoy {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("***************欢迎来到幸运赌场俱乐部**************");
System.out.print("是否开始游戏?y/n");
String ans = input.next();
int money = 0;
int end = 0;
if (!"n".equals(ans)) {
System.out.print("请充值!(万)");
money = input.nextInt();
end += money;
System.out.println("您的余额为:(万)" + end);
while (true) {
int a = (int) (Math.random() * 6 + 1);
int b = (int) (Math.random() * 6 + 1);
int c = (int) (Math.random() * 6 + 1);
String rusult = (a + b + c > 9) ? "大" : "小";
System.out.println("请下注!");
int pay = input.nextInt();
if (pay <= 0) {
System.out.println("您输入有误,请重新输入!");
continue;
}
if (pay <= end) {
System.out.println("请压大还是压小!");
String chose = input.next();
String zuobi;
int j;
int k;
int l;
if (pay > 500) {
do {
j = (int) (Math.random() * 6 + 1);
k = (int) (Math.random() * 6 + 1);
l = (int) (Math.random() * 6 + 1);
zuobi = j + k + l > 9 ? "大" : "小";
} while (chose.equals(zuobi));
System.out.println("买定离手:" + j + "——" + k + "——" + l + "——>" + zuobi);
System.out.println("很遗憾你没有中!");
end -= pay;
System.out.println("您现在所剩余额为:" + end);
} else {
System.out.println("买定离手:" + a + "——" + b + "——" + c + "——>" + rusult);
if (rusult.equals(chose)) {
System.out.print("恭喜你买中!");
end += pay;
System.out.println("您现在余额为:" + end);
} else {
System.out.println("很遗憾你没有中!");
end -= pay;
System.out.println("您现在所剩余额为:" + end);
}
}
} else {
System.out.println("您输入有误,请重新输入!");
continue;
}
if (end < 100) {
System.out.println("您的余额不足!请问是否需要充值?y/n");
ans = input.next();
if (!"n".equals(ans)) {
System.out.println("请充值!(万)");
money = input.nextInt();
end += money;
System.out.println("您的余额为:(万)" + end);
continue;
} else {
break;
}
}
}
System.out.println("欢迎下次光临!");
} else {
System.out.println("小赌怡情,大赌发家致富!");
}
}
}
输出结果为:
***************欢迎来到幸运赌场俱乐部************** 是否开始游戏?y/n y 请充值!(万)1000 您的余额为:(万)1000 请下注! 1000 请压大还是压小! 大 买定离手:5——2——1——>小 很遗憾你没有中! 您现在所剩余额为:0 您的余额不足!请问是否需要充值?y/n y 请充值!(万) 500 您的余额为:(万)500 请下注! 500 请压大还是压小! 大 买定离手:4——3——5——>大 恭喜你买中!您现在余额为:1000 请下注! 1000 请压大还是压小! 小 买定离手:6——6——3——>大 很遗憾你没有中! 您现在所剩余额为:0 您的余额不足!请问是否需要充值?y/n n 欢迎下次光临!
2、输入一批整数,输出其中的最大值和最小值,输入数字0时结束循环,输出结果不为0;
编写代码为:
import java.util.Scanner;
public class LianXi1 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int no=0 ;
int max=0 ;
int min=0 ;
do {
System.out.print("请输入一个整数(输入0结束):");
no = input.nextInt();
if(min==0) {
min=no;
max=no;
}
if (max < no&&no!=0) {
max = no;
}
if (min > no&&no!=0) {
min= no;
}
} while (no != 0);
System.out.print("最大值是:" + max + ";");
System.out.println("最小值是:" + min);
}
}
输出结果为:
请输入一个整数(输入0结束):53
请输入一个整数(输入0结束):87
请输入一个整数(输入0结束):23
请输入一个整数(输入0结束):6
请输入一个整数(输入0结束):68
请输入一个整数(输入0结束):26
请输入一个整数(输入0结束):0
最大值是:87;最小值是:6