CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

用程序做数学难题,输出一数组里面的所有可能的情况(具体请看本文)

楼主unixpeter()2006-05-02 15:32:46 在 .NET技术 / ASP.NET 提问

我弟弟因为上初中,有一道数学难题,所以请大家帮助  
  有一些数据   01   02   05   08   09   10   11   13   18  
   
  请问将这些数据分别组成6个一组,且每组的数据不能相同。请问如何将它找出来?并输出来,就在网页上如何做呢?    
   
  例组1:01   02   05   08   09   10  
  例组2:01   02   05   08   09   11  
  例组3:01   02   05   08   09   13  
  .........  
   
  请问用程序如何做?  
   
  把它做成一个数组以后关键是如何取出数呢?  
   
  希望那位朋友能写出具体的程序  
   
  谢谢  
   
   
  <script   runat="server">  
  sub   page_load()  
   
  dim   r   as   string="01,02,05,08,09,10,11,13,18"  
  dim   MyArray     As   System.Array=Split(r,",")  
  '这里开始小弟就不知道怎么做了  
  end   sub  
  </script> 问题点数:20、回复次数:20Top

1 楼unixpeter()回复于 2006-05-02 15:48:45 得分 0

!Top

2 楼unixpeter()回复于 2006-05-02 17:58:51 得分 0

topTop

3 楼insiderc()回复于 2006-05-02 18:59:57 得分 0

你不会是求彩票号吧Top

4 楼insiderc()回复于 2006-05-02 19:06:24 得分 0

只告诉你方法,代码你自己写  
  1   从数组中只取5个数据,如01   02   05   08   09   10   11   13   18只要01   02   05   08   09   ,余下(10   11   13   18)的依次组合成6个数据。  
  2再从数组中只取5个       ,如01   02   05   08   09   10   11   13   18只要02   05   08   09   10   ,余下(11   13   18   01)的依次组合成6个数据。  
  3依次类推。  
  这难吗。我帮你连答案都做出来了Top

5 楼insiderc()回复于 2006-05-02 19:12:20 得分 0

你要求所有的话,用穷举法做。Top

6 楼unixpeter()回复于 2006-05-02 19:34:21 得分 0

关键就是您这样取数据不好取啊  
   
  是一个变量啊,我说的数据01   02   05   08   09   10   11   13   18是随时要变的啊,也可以多几位,也可以少几位。就是取值的时候不好取啊  
   
  比如你看吧  
   
  sub   GetData()  
  dim   a   As   string="01,02,05,08,09,10,11,13,18"  
  dim   b   as   system.array=split(a,",")  
  for   i   as   integer=0   to   b.length-1  
  '这里怎么取数据啊?  
  '是这样的吗?  
  dim   temp   as   string=""  
  temp=temp   &   b(i)   &   ","   &   b(i+1)&   ","   &   b(i+2)&   ","   &   b(i+3)&   ","   &   b(i+4)&   ","   &   b(i+5)  
  response.write(temp)  
  '如果这样的话就不能像您那样取啊,也取不完的  
  '我这样算出只有几十种可能,而答案是有210个结果。我还想把这个取数值搞动动态的啊,以后随时输入数据组(类似这样的:01,02,05,08,09,10,11,13,18)都随时输出来。  
   
  关键是如何取这个值难啊  
  我还要把每一个数组写入数据库保存起来呢,以后还要查询的。  
  next   i  
  end   subTop

7 楼unixpeter()回复于 2006-05-02 19:35:14 得分 0

楼上的朋友可否讲下“穷举法”是怎么做的呢?程序里面有专门的这样一个关键字声明吗?Top

8 楼unixpeter()回复于 2006-05-02 19:35:50 得分 0

是啊,我就是想选彩票,然后计算一共有多少注呢Top

9 楼insiderc()回复于 2006-05-02 19:43:41 得分 0

我给你求了,如果   你中了又不会给我个百把万Top

10 楼unixpeter()回复于 2006-05-02 20:57:00 得分 0

我算出来的号又不一定是中奖号,我只是在算,一共有多少注。我有底儿啊  
   
  太难搞啦!Top

11 楼unixpeter()回复于 2006-05-02 20:58:23 得分 0

就算帮帮忙是怎么算出来的啊?  
   
  我用数组老是求不出来,主要是动态的,要是静态的都好算呢Top

12 楼insiderc()回复于 2006-05-02 23:21:26 得分 0

上面数组本来就不是动的,怎么不好算咧,一个一个循环的取就行了Top

13 楼insiderc()回复于 2006-05-02 23:23:50 得分 0

建议你用C或是C++写算了速度快些Top

14 楼unixpeter()回复于 2006-05-03 08:58:10 得分 0

具体怎么写啊?动态的就只能取到数据组的长度  
  比如  
   
  string   DynamicData="01,02,03,04,05,06,07,08,09,10,11"  
  System.Array   DynamicArray   =split(dynamicdata,",")  
  response.write(DynamicArray.Length)  
   
  'result=11  
   
  for(integer   i=0;i<11;i++){  
  //这里怎么取啊?  
  }Top

15 楼unixpeter()回复于 2006-05-03 09:01:20 得分 0

大家帮帮忙嘛,我只是想算一些数据好买双色球,如果用手来写,可能会写掉一些数据,程序就能准确的算出来.Top

16 楼unixpeter()回复于 2006-05-03 10:25:35 得分 0

Private   Sub   page_load(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)  
          Dim   TotalNumber   As   String   =   "01,02,03,04,05,06,07,08,09,10"  
          Dim   Arrays   As   System.Array   =   Split(TotalNumber,   ",")  
          For   i   As   Integer   =   0   To   Arrays.Length   -   1  
              If   i   <=   Arrays.Length   -   6   Then  
                  Response.Write(Arrays(i)   &   ","   &   Arrays(i   +   1)   &   ","   &   Arrays(i   +   2)   &   ","   &   Arrays(i   +   3)   &   ","   &   Arrays(i   +   4)   &   ","   &   Arrays(i   +   5)   &   "<br   />")  
              Else  
                  Dim   k   As   Integer   =   0  
                  Dim   n   As   Integer   =   0  
                  Dim   temp   As   String   =   ""  
                  k   =   Arrays.Length   -   i  
                  n   =   6   -   k  
         
       
                  For   j   As   Integer   =   i   To   Arrays.Length   -   1  
                      temp   =   temp   &   Arrays(j)   &   ","  
                  Next   j  
                  For   m   As   Integer   =   0   To   n   -   1  
                      temp   =   temp   &   Arrays(m)   &   ","  
                  Next   m  
                  temp   =   Left(temp,   Len(temp)   -   1)  
                  Response.Write(temp   &   "<br   />")  
              End   If  
          Next   i  
      End   Sub  
  这段程序只能算出十种可能,救命啊Top

17 楼shrinerain(圣影雨)回复于 2006-05-03 11:01:39 得分 0

任何一本算法书里面,都会有这道基础入门题。  
   
  在算法中的地位相当于程序设计的Hello,world。  
   
  用递规解决Top

18 楼unixpeter()回复于 2006-05-03 11:04:05 得分 0

朋友可否帮小弟写一段代码呢?Top

19 楼billmo1986(潘安+宋玉)回复于 2006-05-03 19:59:49 得分 0

我想想做做Top

20 楼unixpeter()回复于 2006-05-04 20:45:42 得分 0

嗯Top

相关问题

关键词

得分解答快速导航

  • 帖主:unixpeter

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo