
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程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)