Java中如何进行求导运算

来源:百度知道 编辑:UC知道 时间:2024/05/18 11:01:06
这是一段计算器的部分代码,如何在其中添加一个求导按钮事件(”1/n”)进行求导运算

void doOperation(){
double m=Double.parseDouble(x.getText());
if(preOperater.equals("")) sum=m;
if(preOperater.equals("+")) sum=sum+m;
if(preOperater.equals("-")) sum=sum-m;
if(preOperater.equals("*")) sum=sum*m;
if(preOperater.equals("/")) sum=sum/m;
if(preOperater.equals("%")) sum=sum%m;

x.setText(""+ sum);
}

public void actionPerformed(ActionEvent e){
String currentop=e.getActionCommand();
try{
if(Character.isDigit(currentop.charAt(0)))
x.setText(x.getText()+currentop);
else if(currentop.equals(".")){
String s=x.getText();
if(s.indexOf(".")==-1)
x.setText(s+".");
}
else if(currentop.equals("+/-"))
x.setText("-"+x.getText());
else if(currentop.equals("=")){
doOperation();

求导的方法:
  (1)求函数y=f(x)在x0处导数的步骤:
  ① 求函数的增量Δy=f(x0+Δx)-f(x0)
  ② 求平均变化率
  ③ 取极限,得导数。

  (2)几种常见函数的导数公式:
  ① C'=0(C为常数);
  ② (x^n)'=nx^(n-1) (n∈Q);
  ③ (sinx)'=cosx;
  ④ (cosx)'=-sinx;
  ⑤ (e^x)'=e^x;
  ⑥ (a^x)'=a^xIna (ln为自然对数)
  ⑦ loga(x)'=(1/x)loga(e)

  (3)导数的四则运算法则:
  ①(u±v)'=u'±v'
  ②(uv)'=u'v+uv'
  ③(u/v)'=(u'v-uv')/ v^2
  ④[u(v)]'=[u'(v)]*v' (u(v)为复合函数f[g(x)])

  (4)复合函数的导数 复合函数对自变量的导数,等于已知函数对中间变量的导数,乘以中间变量对自变量的导数--称为链式法则。

java中有 log(double x):传回x的自然对数函数值 你可以将算式转化 不过用起来个人觉得比较麻烦 但是这是一个可行的思路