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



我的vb作业题目,实在不会,请教这里的专业人士.


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


我的vb作业题目,实在不会,请教这里的专业人士.
发表于:2007-09-08 09:59:06 楼主
我是一个大三的学生,学物流的,学校的vb课程作业我实在不会,请教这里的师兄师姐们

1. 货物a每件占用货架4个,货物b每件占用货架2个,货物c每5件占用一个货架,要求用100件货物放满100个货架,编程计算各种货物的数量,在文本框text1、text2、text3中显示

2. 从键盘输入20个数,在列有框list1中输出,其中能被3整除的数同时在列表框list2中输出。并将这些能被3整除的数求出最大值、最小值、平均值在文本框text1、text2、text3中显示(要求使用循环结构)

3. 在文本框text1中输入金额(元),点击按钮command1,计算所需各面额的张数,并在标签框中显示,要求总张数最少
发表于:2007-09-08 11:58:341楼 得分:0
...大学生...

让我想起了几年前的千千vb.....

那时候一下子火了一段时间,为什么?

因为那段时间是大学生快毕业时-_-b

大学生的学习能力不至于这么差吧...?
发表于:2007-09-08 12:08:372楼 得分:0
1. 货物a每件占用货架4个,货物b每件占用货架2个,货物c每5件占用一个货架,要求用100件货物放满100个货架,编程计算各种货物的数量,在文本框text1、text2、text3中显示
//
a=4,b=2,c=5

使用循环穷举法,三层for循环嵌套,就可以搞定

2. 从键盘输入20个数,在列有框list1中输出,其中能被3整除的数同时在列表框list2中输出。并将这些能被3整除的数求出最大值、最小值、平均值在文本框text1、text2、text3中显示(要求使用循环结构)
//
整除就不说了;
最大最小平均值:
最大最小,使用任意一种排序法(如最简单的,冒泡法)可以搞定
平均值,不用说了吧?

3. 在文本框text1中输入金额(元),点击按钮command1,计算所需各面额的张数,并在标签框中显示,要求总张数最少
//
大概想了一下,使用递归结构进行递减,可以搞定

以上的思路都给出了,具体操作是你自己的事了

ps:

学校出这样的作业不是为了让你学编程,而是锻炼你的学习与理解新事物的能力....

希望别骂我.........
发表于:2007-09-08 13:34:033楼 得分:0
我觉得已经可以了,思路有了就好做!
麻烦   myjian   给解答下我的问题!
就是   “时间”   那一个
发表于:2007-09-08 13:48:204楼 得分:0
最好自己先去做一下   具体遇到什么问题   在来讨论   这样自己收获才比较大

上面老马有个错误

a=4,b=2,c=1/5   或者   要是觉得小数麻烦就统统乘以5
a=20,b=10,c=1,问题变成   100个货物放满   500个货架
发表于:2007-09-08 16:57:065楼 得分:0
.........
发表于:2007-09-08 17:15:066楼 得分:0
货物a每件占用货架4个,货物b每件占用货架2个,货物c每5件占用一个货架

//

我看成了 "货物a每4件占用货架1个 "...............   =_=b
发表于:2007-09-08 17:18:467楼 得分:0
to   laien607(疯狂的兔子)  

哪里???
发表于:2007-09-09 00:04:048楼 得分:0
第三题,兑钱从大面额开始,逐渐减小面额,结果肯定是最优的
人民币面额的设计专门用来解决楼主的这道题
发表于:2007-09-09 13:06:199楼 得分:0
第1题答案~
private   sub   command1_click()
        dim   a   as   integer,   b   as   integer,   c   as   integer,   d   as   integer,   e   as   integer
        dim   i   as   integer
       
        text1.text   =   " "
        text2.text   =   " "
        text3.text   =   " "

        for   c   =   5   to   95   step   5
            b   =   (1500   -   19   *   c)   /   10
            a   =   100   -   c   -   b
            d   =   4   *   a   +   2   *   b   +   c   /   5
         
          if   a   >   0   and   int(a)   =   a   and   instr(a,   ". ")   =   0   and   b   >   0   and   int(b)   =   b   and   instr(b,   ". ")   =   0   and   d   =   100   then
         
            i   =   i   +   1
            msgbox   "第 "   &   i   &   "组符合要求的数据是: "
       
            text1.text   =   a
            text2.text   =   b
            text3.text   =   c
           
          end   if
        next
end   sub
发表于:2007-09-09 14:18:5110楼 得分:0
y1   =   100       '100元
    y2   =   50         '50元
    y3   =   10         '10元
    y4   =   5           '5元
    y5   =   2           '2元
    y6   =   1           '1元
    y7   =   0.5       '5角
    y8   =   0.1       '1角
    y9   =   0.05     '5分
    y10   =   0.02   '2分
    y11   =   0.01   '1分
   
    if   isnumeric(text1.text)   =   false   then
      msgbox   "金额只能为数字,请重新输入! ",   64,   "错误 "
        text1.setfocus
          exit   sub
    end   if
   
    x   =   val(text1.text)
   
    '   ni   =   (x   -   n(i   -   1)   *   y(i   -   1))   '整除yi
 
    n1   =   int(x   /   y1)
    n2   =   int((x   -   n1   *   y1)   /   y2)
    n3   =   int((x   -   n1   *   y1   -   n2   *   y2)   /   y3)
    n4   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3)   /   y4)
    n5   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3   -   n4   *   y4)   /   y5)
    n6   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3   -   n4   *   y4   -   n5   *   y5)   /   y6)
    n7   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3   -   n4   *   y4   -   n5   *   y5   -   n6   *   y6)   /   y7)
    n8   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3   -   n4   *   y4   -   n5   *   y5   -   n6   *   y6   -   n7   *   y7)   /   y8)
    n9   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3   -   n4   *   y4   -   n5   *   y5   -   n6   *   y6   -   n7   *   y7   -   n8   *   y8)   /   y9)
    n10   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3   -   n4   *   y4   -   n5   *   y5   -   n6   *   y6   -   n7   *   y7   -   n8   *   y8   -   n9   *   y9)   /   y10)
    n11   =   int((x   -   n1   *   y1   -   n2   *   y2   -   n3   *   y3   -   n4   *   y4   -   n5   *   y5   -   n6   *   y6   -   n7   *   y7   -   n8   *   y8   -   n9   *   y9   -   n10   *   y10)   /   y11)
   
    msgbox   "100元面额张数: "   &   n1   &   vbcrlf   &   "50元面额张数: "   &   n2   &   vbcrlf   &   "10元面额张数: "   &   n3   _
    &   vbcrlf   &   "5元面额张数: "   &   n4   &   vbcrlf   &   "2元面额张数: "   &   n5   &   vbcrlf   &   "1元面额张数: "   &   n6   _
    &   vbcrlf   &   "5角面额张数: "   &   n7   &   vbcrlf   &   "1角面额张数: "   &   n8   &   vbcrlf   &   "5分面额张数: "   &   n9   _
    &   vbcrlf   &   "2分面额张数: "   &   n10   &   vbcrlf   &   "1分面额张数: "   &   n11
发表于:2007-09-09 17:08:4111楼 得分:0
建议先把   数学学好再说,我想   你不会做,是因为不了解算法吧!
发表于:2007-09-10 00:51:3212楼 得分:0
应该不会是算法问题

估计是语法问题......
发表于:2007-09-10 07:46:0013楼 得分:0
同意ls的~
算法部分   有小学生水平就够了
估计是对vb语言本身不够熟悉~


快速检索

最新资讯
热门点击