24小时热门版块排行榜    

CyRhmU.jpeg
查看: 859  |  回复: 9

smallboy86

铜虫 (正式写手)

[交流] 【求助】帮忙读一个程序已有8人参与

刚接触程序 ,  看不懂呀   哪位大侠 帮忙看一下 指导指导小弟呀!  谢谢!  

#include
   #include
   #include
   #define e 0.001
   #define tt 0.001
   float function(float x)
   {
float y=8*pow(x,3)-2*pow(x,2)-7*x;
return(y);
}
   void finding (float a[3], float f[3])
   {
      float t=tt, a1,f1,ia;
        a[0]=0;
f[0]=function(a[0]);
for(int i=0;;i++)
{    a[1]=a[0]+t;  f[1]=function(a[1]);
      if(f[1]   if(fabs(f[1]-f[0]>=e)
  {  t=-t; a[0]=a[1]; f[0]=f[1];
   else { if(ia==1)  return;
         t=t/2;  ia=1;
}
for(i=0;;i++)
{ a[2]=a[1]+t;  f[2]=function(a[2]);
      if(f[2]>f[1])  break;
      t=2*t;
      a[0]=a[1]; f[0]=f[1];
      a[1]=a[2]; f[1]=f[2];
    }
if(a[0]>a[2])  
   {   a1=a[0]; f1=f[0];
       a[0]=a[2]; f[2]=f[1];
a[2]=a1; f[2]=f1;
}
return;
}
float gold(float*ff)
{ float a1[3],f1[3],a[4],f[4];
  float aa;
  finding(a1,f1);
a[0]=a1[0]; f[0]=f1[0];
a[3]=a1[2]; f[3]=f1[2];
a[1]=a[0]+0.382*(a[3]-a[0]); a[2]=a[0]+0.618*(a[3]-a[0]);
f[1]=function(a[1]);   f[2]=function(a[2]);
for(int i=0;;i++)
if(f[1]>=f[2])  
   {   a[0]=a[1]; f[0]=f[1];
       a[1]=a[2]; f[1]=f[2];
a[2]=a[0]+0.618*(a[3]-a[0]); f[2]=function(a[2]);
}
else{ a[3]=a[2]; f[3]=f[2];
    a[2]=a[1]; f[2]=f[1];
a[1]=a[0]+0.382*(a[3]-a[0]); f[1]=function(a[1])
    }
if((a[3]-a[0])   { aa=a[1]+a[2]/2;  *ff=function(aa);
    break;
        }
     }
return(aa);
}
void main ()
  {
Float xx, ff;
xx=gold(&ff);
printf(“\nThe Optimal Design Result Is: \n”);
printf(“\n\tx*=%f\n\tf*=%f”,xx,ff);
getch();
}
回复此楼
坚持每天清理生活垃圾!计划可以改,目标不能变!寻求突破!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sjh717142

新虫 (初入文坛)


小木虫(金币+0.5):给个红包,谢谢回帖交流
这个要怎么跟你说……
去看看C语言基础吧 都是些最简单的
Eddy Blog: www.rrgod.com
2楼2010-12-20 14:59:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maomao1210

金虫 (正式写手)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+2):鼓励讨论! 2010-12-20 20:22:34
引用回帖:
Originally posted by sjh717142 at 2010-12-20 14:59:21:
这个要怎么跟你说……
去看看C语言基础吧 都是些最简单的

从代码还原为公式,而且不是一个领域的,恐怕比登天还难吧?

语法,句子看的很明白,这个相对简单一些的。但要还原为原始公式和窥视作者的意图,那真是比登天还难。
3楼2010-12-20 15:02:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maomao1210

金虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1):高,实在是高! 2010-12-20 20:23:04
用一个十分恰当,当是有点不雅的比喻来形容这一过程的话,就好比,从一坨狗便便来判断出狗狗吃的到底是啥狗粮一样的道理吧???? 恰当,哈哈,绝对恰当,哈哈哈哈。有意思。
4楼2010-12-20 15:06:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

stephenliu89

银虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1):谢谢参与应助! 2010-12-21 11:03:31
程序应该写注释啊。。。。。编程习惯啊!!程序不仅要让计算机能执行,更重要的要让人很好的理解。。。。。建议看看斯坦福大学开放课程《编程方法》
Email:stephenliu1989@163.com
5楼2010-12-20 23:11:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

smallboy86

铜虫 (正式写手)

引用回帖:
Originally posted by stephenliu89 at 2010-12-20 23:11:35:
程序应该写注释啊。。。。。编程习惯啊!!程序不仅要让计算机能执行,更重要的要让人很好的理解。。。。。建议看看斯坦福大学开放课程《编程方法》

斯坦福大学开放课程哪个网站可以找到呀?
坚持每天清理生活垃圾!计划可以改,目标不能变!寻求突破!
6楼2010-12-21 17:53:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

swyxgc

新虫 (初入文坛)


小木虫(金币+0.5):给个红包,谢谢回帖交流
看课本,都是最基本的知识,不过就是复杂一点
7楼2010-12-23 16:33:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lurencyj

木虫 (著名写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
楼主,你的程序风格忒不好了。。。。
这样的程序要是2周后再看,估计你自己都要吐了。
很女子很弓虽大
8楼2010-12-28 05:03:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gcssg1

金虫 (小有名气)


小木虫(金币+0.5):给个红包,谢谢回帖交流
我也是初学者,冒个泡,先欣赏欣赏你们作品
心事浩茫连广宇,于无声处听惊雷
9楼2010-12-30 20:30:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

maomao的比喻相当恶心
10楼2011-01-02 11:15:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 smallboy86 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见