双色球中奖查询
双色球中奖,红球1~33中选择6个,蓝球1~16中选择1个、
6红1蓝 一等奖 6红0蓝 二等奖 5红1蓝 三等奖
5红0蓝;4红1蓝 四等奖 4红0蓝;3红1蓝 五等奖
2红1蓝;1红1蓝;0红1蓝 六等奖
需要随机出中奖号码,和用户输入购买号码
//导包
import java.util.Scanner;
import java.util.Random;
public class text {
public static void main(String[] args) {
//创建键盘输入的对象
Scanner sc = new Scanner(System.in);
Random rand = new Random();
//获得红球中奖的数字和蓝球中奖数字
int[] lottery = getlottery(6, 33 , 1);
int bluelottery = rand.nextInt(16) + 1;
//用以验证先打印中奖数字
System.out.println("中奖的红球号码为:");
printArray(lottery);
System.out.println("中奖的蓝球号码为:" + bluelottery);
//给出提示并接受蓝球数据
System.out.println("请输入你所买的蓝球号码:");
int blueball = sc.nextInt();
//判断蓝球数据合法性
while(blueball < 1 || blueball > 16){
System.out.println("请重新输入你所买的蓝球号码:");
blueball = sc.nextInt();
}
//给出提示并接受红球数据
int[] redball = getredball(6);
//打印所输入数据
printArray(redball);
System.out.println("你所输入的蓝球号码为" + blueball);
//对比红球中奖数
int lotteryrednumber = compareArray(redball, lottery);
//对比蓝球中奖数
int lotterybluenumber = 0;
if(bluelottery == blueball){
lotterybluenumber = 1;
}
if(lotterybluenumber == 1) {
//当蓝球中奖的情况
switch (lotteryrednumber) {
case 6 -> System.out.println("恭喜中一等奖");
case 5 -> System.out.println("恭喜中三等奖");
case 4 -> System.out.println("恭喜中四等奖");
case 3 -> System.out.println("恭喜中五等奖");
case 2, 1, 0 -> System.out.println("恭喜中六等奖");
}
}else{
//当蓝球没有中奖的情况
switch (lotteryrednumber) {
case 6 -> System.out.println("恭喜中二等奖");
case 5 -> System.out.println("恭喜中四等奖");
case 4 -> System.out.println("恭喜中五等奖");
default -> System.out.println("谢谢惠顾");
}
}
}
//接收红球号码的方法
public static int[] getredball(int redballnumber) {
//创建键盘输入的对象
Scanner sc = new Scanner(System.in);
int[] redball = new int[redballnumber];
for (int i = 0; i < redballnumber; ) {
System.out.println("请输入第" + (i + 1) + "个红球号码");
//接收数据
int temp = sc.nextInt();
//判断数据合法性
if (temp >= 1 && temp <= 33) {
if(notrepeat(redball,temp) == true){
redball[i] = temp;
i++;
}else{
System.out.println("你所输入的球数以重复,请重新输入");
}
} else {
System.out.println("你所输入的球数不存在,请重新输入");
}
}
return redball;
}
//创建随机的多球中奖号码的方法
public static int[] getlottery(int ballnumber, int max, int min){
//创建对象
Random rand = new Random();
int[] lottery = new int[ballnumber];
for (int i = 0; i < ballnumber; i++) {
boolean flag = false;
//当验证结果为false时,重新执行该步骤
while(flag == false){
//赋值从min到max的随机数
lottery[i] = rand.nextInt(max) + min;
//当i为0时,直接达成条件,不需要对数值验证
if (i == 0) {
flag = true;
}
//对数值验证,防止重复
for(int j = 0; j < i;) {
if(lottery[i] != lottery[j]){
flag = true;
j++;
}else{
flag = false;
break;
}
}
}
}
return lottery;
}
//传入数组和要进入数组的数,防止重复的方法
public static boolean notrepeat(int[] arr, int number){
//对数值验证,防止重复
for(int i = 0; i < arr.length;i++) {
if(number == arr[i]){
return false;
}
}
return true;
}
//对比红球数据
public static int compareArray(int[] redball, int[] lottery){
//定义count来记录中奖球数
int count = 0;
for (int i = 0; i < redball.length; i++) {
for (int j = 0; j < lottery.length; j++) {
if(redball[i] == lottery[j]){
count++;
break;
}
}
}
//返回中奖球数
return count;
}
//用于验证的打印数组方法
public static void printArray(int[] array){
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
}
控制台的小型学生管理系统
创建面向对象Student
package StudentSystem;
public class Student {
private int id;
private String name;
private int age;
//空参构造
public Student () {
}
//带参构造
public Student (int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
//id的设置和调用
public void setid(int id) {
this.id = id;
}
public int getid() {
return id;
}
//name的设置和调用
public void setname(String name) {
this.name = name;
}
public String getname() {
return name;
}
//age的设置和调用
public void setage(int age) {
this.age = age;
}
public int getage() {
return age;
}
}
代码主体
package StudentSystem;
//导入键盘输入包
import java.util.Scanner;
public class StudentSystem {
public static void main(String[] args) {
//创建键盘输入的对象,和放入student的数组
Scanner sc = new Scanner(System.in);
Student[] arr = new Student[3];
Student st1 = new Student(001, "张三" , 19);
Student st2 = new Student(002, "李四" , 22);
//Student st3 = new Student(003, "王五" , 26);
//将数据赋值给数组
arr[0] = st1;
arr[1] = st2;
//arr[2] = st3;
//获得新数组和打印验证
arr = addstudent(arr);
for (int i = 0; i < arr.length; i++) {
Student Student = arr[i];
if(Student != null){
System.out.println(Student.getid() + " ," + Student.getname() +
" ," + Student.getage());
}
}
//删除一个数据
arr = delete(arr);
//打印新数组
for (int i = 0; i < arr.length; i++) {
Student Student = arr[i];
if(Student != null){
System.out.println(Student.getid() + " ," + Student.getname() +
" ," + Student.getage());
}
}
//查询一个id把他找出来
int index = getindex(arr, 2);
if(index >= 0){
//索引存在
Student Student = arr[index];
int temp = Student.getage() - 1;
Student.setage(temp);
}else{
//索引不存在
System.out.println("索引不存在,所以修改失败");
}
}
//添加新学生的方法
public static Student[] addstudent(Student[] arr) {
Student st = scannerstudent(arr);
//定义一个计数器用记录
int count = 0;
//数组内还有空间的情况
for (int i = 0; i < arr.length; i++) {
if (arr[i] == null) {
arr[i] = st;
return arr;
}
count ++;
}
//数组内没有空间的情况
Student[] temparr = creatarr(arr);
temparr [count] = st;
return temparr;
}
//键盘获取学生信息
public static Student scannerstudent(Student[] arr) {
Scanner sc = new Scanner(System.in);
boolean flag = true;
Student st = new Student();
while (flag == true){
//接受键盘输入的信息
System.out.println("请输入新的添加学生的学号");
int a = sc.nextInt();
System.out.println("请输入新的添加学生的姓名");
String b = sc.next();
System.out.println("请输入新的添加学生的年龄");
int c = sc.nextInt();
st = new Student(a, b, c);
flag = Judgment(arr, a);
if(flag == true){
System.out.println("输入的学号重复,请重新输入");
}
}
return st;
}
//对id的唯一性判断的方法
public static boolean Judgment(Student[] arr, int id){
for (int i = 0; i < arr.length; i++) {
Student Student = arr[i];
//需要非空才可以使用getid
if (Student != null && arr[i].getid() == id) {
return true;
}
}
return false;
}
//创建一个数组,它的长度是老数组长度+1
public static Student[] creatarr(Student[] arr) {
Student[] temparr = new Student[arr.length + 1];
for (int i = 0; i < arr.length; i++) {
temparr[i] = arr[i];
}
return temparr;
}
//根据输入的id,查询是否在数组中存在,然后删除
public static Student[] delete(Student[] arr) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要删除的学生id");
while (true){
int tempid = sc.nextInt();
for (int i = 0; i < arr.length; i++) {
if (arr[i].getid() == tempid) {
arr[i] = null;
System.out.println("已删除" + tempid + "学生的所有信息");
return arr;
}
}
System.out.println("没有找到该信息的学生,请重新输入");
}
}
//寻找索引的方法
public static int getindex(Student[] arr, int id) {
for (int i = 0; i < arr.length; i++) {
Student Student = arr[i];
if (Student != null) {
int tempid = Student.getid();
if (tempid == id) {
//此时i为id所在st的索引
return i;
}
}
}
//没有索引为-1,所以表示无索引
return -1;
}
}