您的位置:程序门 -> vb -> 基础类



**100分**怎样产生一个限定不同范围的随机数然后录入数据库?100哦~


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


**100分**怎样产生一个限定不同范围的随机数然后录入数据库?100哦~
发表于:2007-01-06 22:08:29 楼主
我们现在要实现的功能是,老师在上课的时候根据不同班的人数,随机产生一个学号进行考勤管理,要是缺勤的话就会该学生的学号存在数据库里面,各位大哥,帮帮忙想想要怎么做!!!
发表于:2007-01-06 23:39:391楼 得分:0
这和vb无关
去算法区问问
发表于:2007-01-07 00:02:432楼 得分:0
可以这样:
举个例子,假设这个年级有4个班,定义为a,b,c,d
每个班的学生为a1,a2,...b1,b2.....d1,d2..如此类推,这样学生的id是唯一的
设定每个班的最大人数,例如a班50人,int(rnd(1)   *   49   +   1)

随机产生一个学号进行考勤管理的实现:
先随机产生字母(a,b,c,d),确定了是那个班(就知道该班的人数上限),假设为c
然后随机产生一个人数数字,如36,那么抽出的学生id为:c36

有三年没来这里了,有好建议请提出.


发表于:2007-01-07 00:58:003楼 得分:0
如果每个班的学号都是连续的,那就好办
直接用公式:

x   =   int((最大   -   最小   +   1)   *   rnd   +   最小)

如果是不连续的,就要象楼上说的,以连续的号码代表每一位学生,再产生随机数
发表于:2007-01-07 10:02:364楼 得分:0
gemgama,这位兄弟就真的说出了我的要求了,我所要达到的目的也是这样的,你所说的意思我野懂,可是本人编程能力实在有限,根据这样来写代码实在识难,唉,现在都不知道怎么办好啊!!
发表于:2007-01-07 16:14:155楼 得分:0
select   max(id列名)   from   某班的学生表
select   min(id列名)   from   某班的学生表

把两个值输入到随机数公式,得到一个随机的id

要是班也是随机的,那就用数字代表班,随机生成一个

ps:老师不可能随便给你们出题目吧...多看看书
不懂去问老师,这样可以加深对你的好感,一举两得
当然装个msdn也是很重要的....有vb专用的msdn,很小的
编程的时候按f1就出来了....otl
发表于:2007-01-07 22:19:296楼 得分:0
如果你用的是sql   server,可以直接用newid()来得到结果,方便很多。
发表于:2007-01-07 23:34:577楼 得分:0
能不能具体写一些代码出来啊?数据库是access的
发表于:2007-01-08 01:08:118楼 得分:0
access一般可以用rnd来产生一个随机的结果集,不过不知道你的各个表的结构如何,也不好说什么。。。
发表于:2007-01-08 08:24:089楼 得分:0
思路都有了,就差你动手了..........


快速检索

最新资讯
热门点击