java语言实现一个摇号系统,但是可以内部设定中奖名单这个怎么实现?

java语言实现一个摇号系统,但是可以内部设定中奖名单这个怎么实现?,第1张

1、简单控制台程序如下,如需界面需要自己加个。

package zhidao

import java.util.HashSet

import java.util.Random

import java.util.Scanner

import java.util.Set

/**

* @author bufei

* @datetime 2020年8月31日15:54:11

*/

public class YaoHao {

public static void main(String[] args) {

String xian = "= = = = = = = = ="

// 起点        终点     奖个数          指定的号码个数

int start = 0, end = 0, prizeNum = 0, defaNum = 0

System.out.println(xian)

System.out.println("欢迎使用xxx 抽奖系统!")

System.out.println(xian)

Scanner scanner = new Scanner(System.in)

System.out.println("请输入号码范围例如 1 10:")

start = scanner.nextInt()

end = scanner.nextInt()

System.out.println("请输入奖项个数:")

prizeNum = scanner.nextInt()

System.out.println("请输入指定中奖号码个数,不指定请输入0:")

defaNum = scanner.nextInt()

int[] defa = new int[defaNum]

if (defaNum != 0) {

System.out.println("请输入指定的中奖号码,空格隔开:")

for (int i = 0i <defaNumi++) {

defa[i] = scanner.nextInt()

}

}

System.out.println(xian)

System.out.println("本次抽奖中奖号码为:")

for (int num : randomDraw(start, end, prizeNum, defa)) {

System.out.print(num+" ")

}

}

/**

* @param start    抽奖范围起点

* @param end      抽奖号码范围终点

* @param prizeNum 中奖号码个数

* @param defa     指定中奖号码

* @return

*/

public static Set<Integer>randomDraw(int start, int end, int prizeNum, int[] defa) {

Set<Integer>set = new HashSet<>()

// 未指定中奖号码

if (defa.length == 0) {

//随机抽 prizeNum 个奖

while (set.size() <prizeNum) {

set.add(new Random().nextInt(end - start + 1) + start)

}

return set

} else {

//指定了中奖号码

//把指定的号码加入进去

for (int num : defa) {

set.add(num)

}

//如果没有全部指定 则继续抽剩余的奖项

while (set.size() <prizeNum - defa.length) {

set.add(new Random().nextInt(end - start + 1) + start)

}

return set

}

}

}

2、运行效果如图

指定了中奖号码

未指定中奖号码

未指定中奖号码

1、在手机上找到快捷方式,打开《今日头条》应用步骤

2、在程序首页,单击右下角【我的】步骤

3、在个人中心页面,页面最下端找到【设置】点击步骤

4、进入【设置】页面后,找到【任务中心设置】选项。可以看到功能能开关已经被关闭步骤

5、单击【任务中心设置】选项,打开该功能开关即可

方法/步骤:

1.首先我们打开表格,在表格里制作三个框。

2.分别为:中奖名单、中奖编号和中奖人。

3.在中奖编号旁边的框里,输入函数:RANDBETWEEN()。在括号里,填入参与的人数。

4.在中奖人下面的框里,填入函数:VLOOKUP()。

5.在括号里“选中抽奖名单——逗号——选择2(姓名)——逗号——FALSE精确匹配。然后回车


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

原文地址: https://outofmemory.cn/yw/8049055.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存