那一缕温暖的夕阳

frozen heart

自杀用户
那些犀利的“程序媛”们

一些 IT 行业内叱咤风云的“程序媛”,她们是……



Marissa Mayer,雅虎 CEO,曾是 Google 首位女工程师,Google 第 20 号员工。



Kimber Lockhart,Box 工程总监。



Ruchi Sanghvi,Dropbox 运营总监,曾是 Facebook 首位女工程师。

都是大美女阿~:wdb19:
 

frozen heart

自杀用户

frozen heart

自杀用户
程序有错误,改了一下。现在是升级版本。红色粗体是修改的地方。如果是0的话,第一次循环就退出来了。
#include <stdio.h>
#include <memory.h>
#include <math.h>
#define PI 3.14159265

struct s_Valeur
{
float f_Degre;
float f_Volume;
};

main()
{
int a = 2; // 圆锥体斜边a
float f_Haut = 0; //高
float f_R = 0; //底面半径
double d_Step = 0.01; //步长
s_Valeur s_Maximal, s_Temp; //最大值和中间计算变量

//初始化结构体
memset(s_Maximal, -1, sizeof(float) * 2);
memset(s_Temp, 0, sizeof(float) * 2);

//从0度开始到180度为止,找出体积最大值。
for (int i = 0; i < 180; i += d_Step)
{
f_Haut = a * cos(i * PI / 180);
f_R = (a * sin(i * PI / 180)) / 2;
s_Temp.f_Volume = (PI * f_R * f_R * f_Haut) / 3;
s_Temp.f_Degre = i;
//判断体积最大值
if (s_Temp.f_Volume > s_Maximal.f_Volume)
{
s_Maximal.f_Volume = s_Temp.f_Volume;
s_Maximal.f_Degre = s_Temp.f_Degre;
}
else
{
break;
}
}
}



for (int i = 0; i < 180; i += d_Step)
{
f_Haut = a * cos(i * PI / 180);
f_R = (a * sin(i * PI / 180)) / 2;
s_Temp.f_Volume = (PI * f_R * f_R * f_Haut) / 3;
s_Temp.f_Degre = i;
//判断体积最大值
if (s_Temp.f_Volume > s_Maximal.f_Volume)
{
s_Maximal.f_Volume = s_Temp.f_Volume;
s_Maximal.f_Degre = s_Temp.f_Degre;
}//endif
}//endfor

卡兄,else不要的话行不行?
Visual过期了,什么都试不了呢。

f_R = (a * sin(i * PI / 180)) / 2这个还是不太明白为什么要除2?
 
最后编辑: 2014-04-30

阿吾

踏实做事 有趣做人
for (int i = 0; i < 180; i += d_Step)
{
f_Haut = a * cos(i * PI / 180);
f_R = (a * sin(i * PI / 180)) / 2;
s_Temp.f_Volume = (PI * f_R * f_R * f_Haut) / 3;
s_Temp.f_Degre = i;
//判断体积最大值
if (s_Temp.f_Volume > s_Maximal.f_Volume)
{
s_Maximal.f_Volume = s_Temp.f_Volume;
s_Maximal.f_Degre = s_Temp.f_Degre;
}//endif
}endfor

卡兄,你看能改成这样吗?我觉得else不用行不行?
Visual过期了,什么都试不了呢。

装一个轻量级的环境,dev c++,

网上有很多c/c++在线编译器,
http://hi.baidu.com/jrftsy96/item/5c936daa867ee7f215329be1
 

frozen heart

自杀用户
for (int i = 0; i < 180; i += d_Step)
{
f_Haut = a * cos(i * PI / 180);
f_R = (a * sin(i * PI / 180)) / 2;
s_Temp.f_Volume = (PI * f_R * f_R * f_Haut) / 3;
s_Temp.f_Degre = i;
//判断体积最大值
if (s_Temp.f_Volume > s_Maximal.f_Volume)
{
s_Maximal.f_Volume = s_Temp.f_Volume;
s_Maximal.f_Degre = s_Temp.f_Degre;
}//endif
}//endfor

卡兄,else不要的话行不行?
Visual过期了,什么都试不了呢。

f_R = (a * sin(i * PI / 180)) / 2这个还是不太明白为什么要除2?
你真聪明!
a * sin(i * PI / 180) 是求半径。除2,是我算错了。当时在写的时候,以为算出来的是直径,所以除2了。这里应该去掉。应该改为f_R = a * sin(i * PI / 180)。老了就是比不上年轻了,想当初,这样的算式,在脑子里面转转就出来了,还不会错。现在需要一步一步写出来,否则很容易出错呀。
不要else也可以,那样就是循环180 * 100次。我嫌循环的次数太多了,当找到最大值后,剩下的循环就没有意义了,因此用了break
 
最后编辑: 2014-05-01

注册或登录来发表评论

您必须是注册会员才可以发表评论

注册帐号

注册帐号. 太容易了!

登录

已有帐号? 在这里登录.

Similar threads

顶部