JAVA抽签程序!

JAVA抽签程序!,第1张

import javaawtGridLayout;

import javaawteventActionEvent;

import javaawteventActionListener;

import javautilArrayList;

import javautilregexPattern;

import javaxswingJButton;

import javaxswingJFrame;

import javaxswingJPanel;

import javaxswingJTextArea;

import javaxswingJTextField;

class People

{

private String name;

private int id;

public People(String name)

{

thisname = name;

}

public void setID(int id)

{

thisid = id;

}

public String getName()

{

return name;

}

public int getId()

{

return id;

}

}

public class test3 extends JPanel

{

private JTextArea jtText;

private JButton jbOK;

private People[] peoples;

public test3()

{

thissetLayout(new GridLayout(1, 2));

jtText = new JTextArea();

thisadd(jtText);

jbOK = new JButton("抽签");

thisadd(jbOK);

jbOKaddActionListener(new ActionListener()

{

@Override

public void actionPerformed(ActionEvent e)

{

// TODO Auto-generated method stub

String[] names = jtTextgetText()split("\n");

int count = IntegerparseInt(names[0]);

peoples = new People[count];

boolean[] hasVisited = new boolean[count + 1];

for(int i = 0 ; i < count ; i++)

{

peoples[i] = new People(names[i+1]);

int r;

while(true)

{

r = (int)(Mathrandom()  count) + 1;

if(!hasVisited[r])

{

peoples[i]setID(r);

hasVisited[r] = true;

break;

}

}

}

String text = "";

for(int i = 0 ; i < count ; i++)

{

text += peoples[i]getName();

text += "    ";

text += peoples[i]getId();

text += "\n";

}

jtTextsetText(text);

}

});

}

public static void main(String[] args)

{

test3 panel = new test3();

JFrame frame = new JFrame();

frameadd(panel);

framesetSize(300,300);

framesetVisible(true);

}

}

用python的random函数做一个班级抽签小程序

import random

times=1

while times <= 5:

members =\

['张俊宇',

'孙晓涵',

'黄皓',

'黄媛媛',

'张仁鹏',

'班正平',

'闭玉婷',

'陆腾辉',

'高伟',

'黄锦鸿',

'姜小雪',

'苏慧芳',

'吴锦婷',

'谢晓桐',

'莫成妮',

'农诗佳',

'韦凯英',

'韦肖怡',

'安元光',

'卢崇竣',

'程俊龙',

'麻晨',

'仲湛秋',

'李宗树',

'农国震',

'赵一钊',

'李翀宇',

'钱威骅',

'陆嘉颖',

'古俊峰',

'李林海',

'王启龙',

'丁晟']

winner =randomchoice(members)

print(winner)

times=times+1

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

while循环用于你想一次抽几个人,如五个人就小于等于5。

emm如果哪里有不足或者可以改进的谢谢大家提出来

运行结果

抽签出来的名单

复制一下代码,新建一个txt文件,修改后缀名为html,将代码粘贴进去,然后保存为UTF-8格式。用浏览器打开即可。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ">

vb源码:

Dim num(1 To 36) As Integer

Dim a As Integer

Private Sub Command1_Click()

Dim temp As Integer

For k = 1 To 36

num(k) = 0

Next k

For i = 1 To 36

temp = CInt(Rnd()  35) + 1

a1:

If num(temp) = 0 And temp <> 0 Then

num(temp) = i

Else

temp = CInt(Rnd()  36)

DoEvents

GoTo a1

End If

Next i

MsgBox "抽签完成", vbInformation, "提示"

End Sub

Private Sub Command2_Click()

If num(1) = 0 Then

MsgBox "还没有抽签那", vbInformation, "提示"

GoTo a2

End If

If a = 0 Then

a = 1

ElseIf a = 36 Then

MsgBox "到底了", vbInformation, "提示"

a = 1

End If

Text1Text = "第" & a & "号抽签结果是:" & num(a)

a = a + 1

a2:

End Sub

Private Sub Command3_Click()

End

End Sub

Private Sub Form_Load()

For k = 1 To 36

num(k) = 0

Next k

End Sub

下面附上运行效果图:

如果没有vb6的话给我邮件地址帮你发啦

可以偷懒的嘛!

用记事本把下面代码保存为XXbat 双击运行即可

@echo off&color 3e&mode con cols=55

set nab=1-54

title 不重复随机抽取 %nab%

echo/

echo ==========================

echo/

echo 抽 签 开 始 啦 !

echo/

echo ^( %nab% ^)

echo ==========================

echo/

echo 请输入一名字后回车或直接回车进行抽签,

echo/&echo 中止抽签请按 q 回车:&echo/

setlocal enabledelayedexpansion

set nbn=%nab:-=%

call set nb0=%%nab:-!nbn!=%%

(for /L %%s in (%nb0%,1,%nbn%)do (

call :geths

set !hs!=%%s&echo!hs!

))>temyky

for /f %%r in ('type temyky^|sort')do (

set w=&set/p w=

if /i "!w!"=="q" goto :end

set/a n+=1

echo 第 !n! 个抽的是: !%%r!)

:end

del temyky

echo/&echo 抽签完毕! 按任意键退出

pause>nul&exit

:geths

set hs=%random%

if defined %hs% goto geths

'加一个命令按钮,拷下面的文字看看

Private Sub Command1_Click()

Static a(1 To 10) As Integer, e As Integer

Dim b As Integer, c As Integer

If e = 0 Then

For b = 1 To 10

a(b) = b

Next

End If

e = e + 1

If e = 11 Then

e = 0

Command1Caption = "重新开始"

Exit Sub

End If

Randomize

For c = 1 To 10

b = Int(Rnd() 10) + 1

If a(b) <> -1 Then

Command1Caption = "第" & e & "次抽签结果是" & a(b)

a(b) = -1

Exit For

Else

b = Int(Rnd() 10) + 1

End If

Next

End Sub

以上就是关于JAVA抽签程序!全部的内容,包括:JAVA抽签程序!、python写抽签程序不重复、求一个随机抽签不重复软件或.exe程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/zz/9716753.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存