24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 626  |  回复: 8
当前主题已经存档。

孔方兄

铜虫 (初入文坛)

[交流] 【求助】一个生物类的公式如何反编译(悬赏20)

本人是学习生物类的,数学很糟糕,悬赏20个金币,求助一公式反编译。
X=363.1888+y* 23.25622-y的平方* 1.745972+y的立方*0.0552203,
要求输入x,得到y值。
如果有人能用vb实现同样的功能,同样有奖。
谢谢个位高手出手相助。

[ Last edited by csfn on 2008-11-30 at 11:53 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

595304082syl

木虫 (小有名气)

上网搜搜一元三次方程的万能公式,照着做就行了
2楼2008-07-18 10:47:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

spkeey

金虫 (正式写手)

★ ★
suntao1982(金币+2,VIP+0):xiexie
三次方程可能有一个值对应几个自变量的情况(不符合函数定义),只能说在某个区间上的反函数。

你的导数  x=23.25622-1.745972y1+0.0552203*y2 (二次可能经过X轴)算了下没有经过0。是单调的,不用分开讨论。。算你运气。。。。
可以求反函数。

数值上可以这样处理的:

y=a+bx+cx2+dx3
等效于求
0=(a-y)+bx+cx2+dx3 的根。。

===========
此有公式。

[ Last edited by spkeey on 2008-7-19 at 03:37 ]
SPKEEY
3楼2008-07-18 22:13:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

madonion

金虫 (正式写手)

★ ★ ★
suntao1982(金币+3,VIP+0):辛苦了,欢迎常来!
卡丹公式
确定一般的三次方程的根的公式.
如果用现在的数学语言和符号,卡丹公式的结论可以借助于下面这样一种最基本的设想得出。
假如给我们一个一般的三次方程:
ax3+3bx2+3cx+d=0 (1)
如果令
x=y-b/a
我们就把方程(1)推导成
y3+3py+2q=0 (2)
其中 p=c/a-b2/a2,2q=2b3/a3-3bc/a2+d/a 。
借助于等式
y=u-p/u
引入新变量u 。把这个表达式带入(2),得到:
(u3)2+2qu3-p3=0 (3)
由此得
u3=-q±√(q2+p3),
于是
y=3√(-q±√(q2+p3))-p/3√(-q±√(q2+p3)) 。
=3√(-q+√(q2+p3))+3√(-q-√(q2+p3)) 。
(最后这个等式里的两个立方根的积等于-p 。)
这就是著名的卡丹公式。
如果再由y转到x,那么,就能得到一个确定一般的三次方程的根的公式。
4楼2008-07-19 20:01:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

madonion

金虫 (正式写手)

上面的是网上搜的,不太完全,最好找本数学手册,找卡丹公式,就是一元三次方程的球根公式,直接按着编程就行,很简单的
5楼2008-07-19 20:03:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

madonion

金虫 (正式写手)

★ ★ ★
suntao1982(金币+3,VIP+0):辛苦了,欢迎常来!
找到一个现成的,不过是c语言的
用卡丹公式解一元三次方程

#include

#include

#include

//////////////////函数--用卡丹公式解一元三次方程/////////////////

void fun(double a,double b,double c,double d,

   double *real_y1,double *real_y2,double *real_y3,

   double *imag_y1,double *imag_y2,double *imag_y3)

{

double p,q,r,u,v,g,h,fai;

p=(3.0*a*c-b*b)/(3*a*a);

q=(2.0*pow(b,3.0)-9*a*b*c+27.0*a*a*d)/(27.0*pow(a,3.0));

r=b/(3.0*a);

h=pow(q/2.0,2.0)+pow(p/3.0,3.0);

g=sqrt(h);

if(h>=0)

{

  if(-q/2.0+g<0)

  u=-pow(fabs(-q/2.0+g),1.0/3.0);

  else

  u=pow((-q/2.0+g),1.0/3.0);

  if(-q/2.0-g<0)

  v=-pow(fabs(-q/2.0-g),1.0/3.0);

  else

  v=-pow((-q/2.0-g),1.0/3.0);

  if(h==0)

  {

   *real_y1=u+v-r;            *imag_y1=0;

      *real_y2=-(u+v)/2-r;       *imag_y2=0;

   *real_y3=-(u+v)/2-r;       *imag_y3=0;

  }

  else

  {

   *real_y1=u+v-r;       *imag_y1=0;

   *real_y2=-(u+v)/2;    *imag_y2=sqrt(3.0)*(u-v)/2;

   *real_y3=-(u+v)/2;    *imag_y3=-sqrt(3.0)*(u-v)/2;

  }

}

else

{

  fai=acos((-q/2)/(sqrt(pow(fabs(p),3)/27)));

  *real_y1=2*sqrt(fabs(p)/3.0)*cos(fai/3.0)-r;

  *real_y2=-2*sqrt(fabs(p)/3.0)*cos((fai+3.1415926)/3.0)-r;

        *real_y3=-2*sqrt(fabs(p)/3.0)*cos((fai-3.1415926)/3.0)-r;

  *imag_y1=0;   *imag_y2=0;    *imag_y3=0;

}

}

//////////////////////////////////主函数////////////////////////////////

void main()

{

  double a,b,c,d;

  double real_x1,real_x2,real_x3;

  double *preal_x1=&real_x1;

  double *preal_x2=&real_x2;

  double *preal_x3=&real_x3;

  double imag_x1,imag_x2,imag_x3;

  double *pimag_x1=&imag_x1;

  double *pimag_x2=&imag_x2;

  double *pimag_x3=&imag_x3;

  cout<<"请输入方程的系数a,b,c,d:"<<"\n"<
  cout<<"系数a=";

  cin>>a;

  cout<
  cout<<"系数b=";

  cin>>b;

  cout<
  cout<<"系数c=";

  cin>>c;

  cout<
  cout<<"系数d=";

  cin>>d;

  cout<
  fun(a,b,c,d,preal_x1,preal_x2,preal_x3,pimag_x1,pimag_x2,pimag_x3);

  cout<<"  "<<"   "<<"根的实部"<<"      "<<"根的虚部"<<"\n"<
  printf("x1   %.5f      %.5f\n\n",real_x1,imag_x1);

  printf("x2   %.5f      %.5f\n\n",real_x2,imag_x2);

  printf("x3   %.5f      %.5f\n\n",real_x3,imag_x3);

}
6楼2008-07-19 20:05:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (小有名气)


suntao1982(金币+1,VIP+0):xiexie
本帖仅楼主可见
7楼2008-07-20 09:42:57
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

孔方兄

铜虫 (初入文坛)

看了大家的回答,真是万分感谢,从上大学开始就没有学过数学了,对大家的回答真是一头雾水,卡丹公式,看样子,我前面的想法太简单了,以为可以得到一个简单的方程式。
关于金币,实在是不知道该给谁?版主给我发吧。
关于卡丹公式,我看了半天没有明白,如果有那位高手,能直接帮我写一个程序就好了,生成exe文件,输入x,等到y

[ Last edited by 孔方兄 on 2008-7-20 at 10:21 ]
8楼2008-07-20 10:12:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sjfcs001

铁杆木虫 (正式写手)

★ ★ ★ ★
csfn(金币+4,VIP+0):3Q
我用vb作了个简单的计算程序,可直接运行的,不过只是近似运算,误差在5%以内,仅满足一般工程计算需要

不知道对楼主有用没?
9楼2008-08-30 13:47:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 孔方兄 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿北京理工大学本科211材料工程294求调剂 +6 mikasa的围巾 2026-03-28 6/300 2026-03-29 01:32 by fmesaito
[考研] 083000学硕274求调剂 +8 Li李鱼 2026-03-26 8/400 2026-03-28 20:33 by 加油向未来啊
[考研] 一志愿北京工业大学,324分求调剂 +4 零八# 2026-03-28 4/200 2026-03-28 15:01 by 17865157980
[考研] 320分,材料与化工专业,求调剂 +9 一定上岸aaa 2026-03-27 13/650 2026-03-28 15:00 by 神马都不懂
[考研] 0703一志愿9,初试成绩:338,四六级已过,有科研经历,求调剂! +4 Zuhui0306 2026-03-25 4/200 2026-03-28 13:07 by 唐沐儿
[考研] 311求调剂 +9 lin0039 2026-03-26 9/450 2026-03-28 13:05 by 唐沐儿
[考研] 材料与化工考研调剂 +17 孅華 2026-03-22 17/850 2026-03-28 08:35 by WYUMater
[考研] 求调剂 +3 刘柯@ 2026-03-24 4/200 2026-03-27 11:28 by shangxh
[考研] 315调剂 +4 0860求调剂 2026-03-26 5/250 2026-03-27 11:23 by wangjy2002
[考研] 总分322求生物学/生化与分子/生物信息学相关调剂 +5 星沉uu 2026-03-26 6/300 2026-03-26 19:02 by macy2011
[考研] 材料与化工304求B区调剂 +3 邱gl 2026-03-26 6/300 2026-03-26 18:03 by 邱gl
[考研] 一志愿天津大学339材料与化工求调剂 +3 江往卖鱼 2026-03-26 3/150 2026-03-26 09:42 by 王小欠i
[考研] 303求调剂 +6 蓝山月 2026-03-25 6/300 2026-03-25 22:47 by 418490947
[考研] 0854AI CV方向招收调剂 +4 章小鱼567 2026-03-23 4/200 2026-03-25 17:04 by CoderLoser
[考研] 0854电子信息求调剂 324 +4 Promise-jyl 2026-03-23 4/200 2026-03-25 11:36 by Sugarlight
[考研] 上海电力大学材料防护与新材料重点实验室招收调剂研究生(材料、化学、电化学,环境) +4 我爱学电池 2026-03-23 4/200 2026-03-25 00:59 by 1027_324
[考研] 一志愿南航材料专317分求调剂 +5 炸呀炸呀炸薯条 2026-03-23 5/250 2026-03-24 16:52 by 星空星月
[考研] 344求调剂 +3 desto 2026-03-24 3/150 2026-03-24 10:09 by 搏击518
[考博] 26申博自荐 +3 whh869393 2026-03-24 3/150 2026-03-24 09:55 by 21018060
[考研] 280分求调剂 一志愿085802 +4 PUMPT 2026-03-22 7/350 2026-03-22 22:13 by 星空星月
信息提示
请填处理意见