CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

求一个算法!急

楼主yst_killed(不会游泳的鱼)2005-04-21 11:31:06 在 C/C++ / C++ 语言 提问

四种条件     a   b   c   d  
  其中   a   在条件中占的地位最高,以此类推     b>c>d    
  也就是说   a最重要   也是主要的判断依据,但是   b   c   d也是   只是没有   a   那么高,这里面   d   最小,也是最不起作用的,但是d也可能成为可能的条件。  
   
  所以由   a   b   c   d四个条件得出一个结果后。我再根据这个结果做事情!  
   
  提问   如何根据一种算法   由   a   b   c   d   算出一个合理的值??  
  问题点数:50、回复次数:19Top

1 楼BrandyCao(IUnknown)回复于 2005-04-21 11:41:40 得分 5

result  
   
  if(   a   )  
      result   =   ...;  
  else   if(   b   )  
      result   =   ...;  
  else   if(   c   )  
      result   =   ...;  
  else   if(   d   )  
      result   =   ...;    
   
  ...Top

2 楼longlijun(风之力)回复于 2005-04-21 11:44:51 得分 5

好像楼上的就可以了Top

3 楼yst_killed(不会游泳的鱼)回复于 2005-04-21 12:10:14 得分 0

不是这样   我是想根据   a   b   c   d   的值   算出一个值   根据算出来的值作为条件判断,问题是如何正确的算出这个值,比较合理的算出,又没有好的算法?Top

4 楼pcboyxhy(-273.15℃)回复于 2005-04-21 12:11:53 得分 5

abcd  
    1111   4位二进制数  
  根据数的大小判断就可以Top

5 楼L_BOY()回复于 2005-04-21 12:13:17 得分 5

用switch   (expr)  
  {  
          case(a):do   something;break;  
          case(b):do   something;break;  
          case(c):do   something;break;  
          case(d):do   something;break;  
  };也行吧Top

6 楼zhongwei5695(威少求学C++)回复于 2005-04-21 12:23:58 得分 5

pcboyxhy(-273.15℃)   的算法比较好Top

7 楼yst_killed(不会游泳的鱼)回复于 2005-04-21 12:42:46 得分 0

首先声明以下   abcd四个数都是   0-1.0之间的数。Top

8 楼yst_killed(不会游泳的鱼)回复于 2005-04-21 12:44:56 得分 0

a   b   c   d   四个数都有用   只是a的权值占60%   b的25%   c的10%   d的占3%   这样   ,可见   d也是可能导致条件成立的一个原因。Top

9 楼ainibaobao(牛牛宝宝)回复于 2005-04-21 13:08:57 得分 5

pcboyxhy(-273.15℃)   的效率比较高,学习啊.Top

10 楼yst_killed(不会游泳的鱼)回复于 2005-04-21 13:39:38 得分 0

希望有别的算法Top

11 楼bing_huo(我是一个演员!)回复于 2005-04-21 13:44:01 得分 5

a   b   c   d   四个数都有用   只是a的权值占60%   b的25%   c的10%   d的占3%   这样   ,可见   d也是可能导致条件成立的一个原因。  
   
  这个百分比是什么意思?   要随机??  
   
  我的理解是程序中   1就是1   0就是0   怎么会有可能???Top

12 楼yst_killed(不会游泳的鱼)回复于 2005-04-21 13:51:49 得分 0

郁闷!看来是我问题问的不爽,大家都不明白。  
  不过还是谢谢   pcboyxhy(-273.15℃)     给我一定提示!Top

13 楼sunman1982(冥王星)回复于 2005-04-21 13:52:50 得分 0

不能理解楼主的   意思     难道还要牵扯到仿真学?     不好意思     能力之外了Top

14 楼Magicalfall(魔法的秋天)回复于 2005-04-21 14:21:08 得分 0

看了半天,还是没能理解楼主的题目意思。。。。Top

15 楼LianSir(小b)回复于 2005-04-21 16:56:00 得分 5

这跟数学建模中旅游最佳方案有点相似,根据a,b,c,d所占比例,再根据它在你心目中所占比例,二者相乘,根椐最后结果来确定选哪个方案。?Top

16 楼inlin()回复于 2005-04-21 17:09:32 得分 0

不怎么明白楼主问的问题Top

17 楼yst_killed(不会游泳的鱼)回复于 2005-04-25 09:54:50 得分 0

LianSir()   (   )   就是这个意思!Top

18 楼QunKangLi(心里面疼得有点发酸 一定是有雾来了 打湿了我的眼眶)回复于 2005-04-25 10:21:54 得分 5

if(   a   ||   b   ||   c   ||   d   )   {   ....   }   //按C的逻辑运算规则,如果条件a成立就不会去执行b,c,d的判断,b,c同样~~~  
   
  但要将a,b,c,d组合进一个数而不失原大小关系,可以:  
  int   n   =   ((a!=0)<<3)   |   ((b!=0)<<2)   |   ((c!=0)<<1)   |   (d!=0)   ;//结果为4位二进制数,从高到低依次是a,b,c,dTop

19 楼niuman(青橄榄)回复于 2005-04-25 10:34:04 得分 5

result=comp(a);  
  if(result==0)   result=comp(b);  
  if(result==0)   result=comp(c);  
  return   result;Top

相关问题

  • 急求算法
  • 求解算法,急
  • 压缩算法,急!
  • 急!路由算法!
  • 算法求助!!急
  • 求一算法??急??
  • 求一算法(急)
  • 算法问题 急~~~~~~~~~~
  • 急,求一算法
  • 寻求一算法!(急!急!!)

关键词

  • 算法
  • pcboyxhy
  • 个数
  • 条件
  • 意思
  • 判断
  • 理解
  • 成立
  • do something
  • break

得分解答快速导航

  • 帖主:yst_killed
  • BrandyCao
  • longlijun
  • pcboyxhy
  • L_BOY
  • zhongwei5695
  • ainibaobao
  • bing_huo
  • LianSir
  • QunKangLi
  • niuman

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

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