真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語言試探法求函數(shù)最優(yōu)解 對(duì)數(shù)函數(shù)求解方法

已知目標(biāo)函數(shù)f(x)=x +20/x,取初始區(qū)間[a,b]=[2,10],用0.618法求最優(yōu)解

這里是求目標(biāo)函數(shù)的極小值對(duì)應(yīng)的x值吧?理論分析可知,x = 2√5 ≈ 4.472136 。直接看代碼:

郴州ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!

#include stdio.h

#include conio.h

double x618(double x1,double x2){ //求x1,x2之間靠近x1的黃金分割點(diǎn)

return x1*0.618+x2*0.382;

}

double f(double x){ //目標(biāo)函數(shù)

return x+20.0/x;

}

int main(){

double x1=2.0,x2=10.0,xt1,xt2,ft1,ft2,x;

int cnt=0;

xt1=x618(x1,x2);

xt2=x618(x2,x1);//得到初始試探點(diǎn),xt1靠近x1,xt2靠近x2

while(x2-x11e-6){//這里假設(shè)精度達(dá)到0.001即退出

++cnt;//統(tǒng)計(jì)迭代次數(shù)

ft1=f(xt1);

ft2=f(xt2);

if(ft1ft2){//這里要找極小值,所以要保留小的,如果要找極大值,只需把""改成""

x2=xt2; xt2=xt1; xt1=x618(x1,x2);

}else{

x1=xt1; xt1=xt2; xt2=x618(x2,x1);

}

}

x=(x1+x2)/2;

printf("x=%lg, f(x)=%lg, count=%d",x,f(x),cnt);

printf("\nFinished!\n");

getch();

return 0;

}

程序運(yùn)行結(jié)果與理論解相符。

C語言最優(yōu)解算法

#includestdio.h

int result[100][6];

int data[100000][2];

int main()

{

int i,j,T,f,temp,rlen=0,dlen,swap;

scanf("%d",T);

while(T--0)

{

for(dlen=0;1;dlen++)

{

scanf("%d %d",data[dlen][0],data[dlen][1]);

if(0==data[dlen][0] 0==data[dlen][1])

break;

}

scanf("%d",f);

for(i=0;idlen-1;i++)

{

for(j=0;jdlen-i-1;j++)

{

swap=0;

if(0==f)

{

if(data[j][0]data[j+1][0] || (data[j][0]==data[j+1][0] data[j][1]data[j+1][1]))

{

swap=1;

}

}

else if(1==f)

{

if(data[j][1]data[j+1][1] || (data[j][1]==data[j+1][1] data[j][0]data[j+1][0]))

{

swap=1;

}

}

if(1==swap)

{

temp=data[j][0];

data[j][0]=data[j+1][0];

data[j+1][0]=temp;

temp=data[j][1];

data[j][1]=data[j+1][1];

data[j+1][1]=temp;

}

}

}

if(dlen=3)

{

for(i=0;i3;i++)

{

result[rlen][2*i]=data[i][0];

result[rlen][2*i+1]=data[i][1];

}

rlen++;

}

}

for(i=0;irlen;i++)

{

printf("Case #%d:\n",i+1);

for(j=0;j3;j++)

printf("%d %d\n",result[i][2*j],result[i][2*j+1]);

}

return 0;

}

C語言編程用試探法(要求從大到小試探)實(shí)現(xiàn)函數(shù)gcd(m,n),其功能為求解正整數(shù)m、n的最大公約數(shù)。

#includestdio.h

void?gcd(int?m,?int?n)?{

int?temp?=?m,?i,?max;

if(temp??n)?{

temp?=?n;

}

max?=?temp;

for(i=temp;?i=1;?i--)?{

if(m%max==0??n%max==0)?{

printf("The?result?is?[%d]",?max);

return;

}

max--;

}

}

int?main()?{

int?M,?N;

scanf("[%d],[%d]",?M,?N);

gcd(M,?N);

return?0;

}

【C語言算法】求最優(yōu)解

#include?stdio.h

void?main()

{

double?V;

printf_s("請(qǐng)輸入V:\n");

scanf_s("%lf",?V);

int?m,?n,?p;

int?M,?N,?P;

double?delta?=?10000.0;

for(m?=?0;?m?=?16;?m++)

{

for(n?=?0;?n?=?256;?n++)

{

for(p?=?1;?p?=?4096;?p++)

{

double?d?=?m*n/(double)p?-?V;

if(d??0)

d?=?-d;

if(d??delta)

{

delta?=?d;

M?=?m;

N?=?n;

P?=?p;

}

}

}

}

printf_s("最優(yōu)解:M?=?%d,?N?=?%d,?P?=?%d\n",?M,?N,?P);

}


分享標(biāo)題:c語言試探法求函數(shù)最優(yōu)解 對(duì)數(shù)函數(shù)求解方法
文章起源:http://weahome.cn/article/dooesco.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部