话不多说,直接上代码!(只是片段,参数请自行撮合)


var a, b, c, ld, rd,x1, x2, x3, x2_real, x2_virtual, x3_real, x3_virtual  //ax^3 + bx^2 + cx + ld = rd
//盛金公式threecalculation: function() {var d = ld - rd; //移项使得右边为零var A = b * b - 3 * a * c;var B = b * c - 9 * a * d;var C = c * c - 3 * b * d; //三个重根判别式var detal = B * B - 4 * A * C; //总判别式if (A == 0 && B == 0) {x1 = -c / b;x2 = -b / (3 * a);x3 = -3 * d / c;} else if (detal > 0) {var X1 = A * b + 3 * a * (1 / 2 * (-B + Math.sqrt(delta)));var X2 = A * b + 3 * a * (1 / 2 * (-B - Math.sqrt(delta)));//负数开立方会返回Null,所以要做一下操作if (X1 >= 0) {var Y1 = Math.pow(X1, 1 / 3);} else {var Y1 = - Math.pow(-X1, 1 / 3);}if (X2 >= 0) {var Y2 = Math.pow(X2, 1 / 3);} else {var Y2 = - Math.pow(-X2, 1 / 3);}x1 = (-b - Y1 - Y2) / (3 * a);x2_real = (-2 * b + Y1 + Y2) / (6 * a);x3_real = x2_real;x2_virtual = Math.sqrt(3) * (Y1 - Y2) / (6 * a);x3_virtual = -x2_virtual;} else if (detal == 0) {x1 = -b / a + B / A;x2 = -B / (2 * A);x3 = x2;} else {var T = (2 * A * b - 3 * a * B) / (2 * Math.sqrt(A * A * A));var Xita = Math.acos(T);x1 = (-b - 2 * Math.sqrt(A) * Math.cos(Xita / 3)) / (3 * a);x2 = (-b + Math.sqrt(A) * (Math.cos(Xita / 3) + Math.sin(Xita / 3) * Math.sqrt(3))) / (3 * a);x3 = (-b + Math.sqrt(A) * (Math.cos(Xita / 3) - Math.sin(Xita / 3) * Math.sqrt(3))) / (3 * a);}},

附上盛金公式详解的网址:https://wenku.baidu.com/view/998fd70616fc700abb68fcbf.html

如果帮到您,点个赞呗,有任何疑问也欢迎留言噢~

微信小程序JS编写一元三次方程盛金公式解法代码片段相关推荐

  1. 一元三次方程-盛金公式求解

    原理参考-百度百科(http://baike.baidu.com/link?url=eA-bEvbcOBM2XmA4rzIG-lgci4MQdQcr7lCzCHBW-qG-qcPaDNovXp_jYx ...

  2. 【Note】微信小程序js使用农历(一行代码)

    [Note]微信小程序js使用农历 0 直接输出 var data_ = new Date('2022/10/27 00:00:00') console.log(data_.toLocaleStrin ...

  3. 微信小程序js把数字转化成字母

    微信小程序 js 把数字转化成字母 微信小程序 js 把数字转化成字母 for (let i = 0; i < 26; i++) {list[i] = {};list[i].name = Str ...

  4. 微信会员卡html修改样式模板,微信小程序 JS动态修改样式的实现代码

    微信小程序这个坑啊,js动态修改样式,我们并不能用js或者jq 轻轻松松一行代码搞定.或者用removeClass addClass 来修改样式. 以下是一种动态修改样式的方法,原理是绑定数据,然后动 ...

  5. 微信小程序JS字符串操作方法汇总

    微信小程序JS字符串操作方法汇总 JS对字符串进行切割截取 1.函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str="jpg|bmp|gif|ico| ...

  6. 微信小程序JS字符串操作方法汇总,包含切割截取split,合并字符串join,连接字符串concat,返回指定字符串charAt,提取字符串substring等

    微信小程序JS字符串操作方法汇总 JS对字符串进行切割截取 1.函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str="jpg|bmp|gif|ico| ...

  7. 微信小程序js过度动画

    微信小程序js过度动画 如有错误还请大神指教.如果觉得不错可以关注我了解更多. 一,我们先来看看效果吧. 二,我们用的是js的逐帧动画,css也可有相同的效果,我们这里用js // pages/arr ...

  8. 微信小程序js 字符串截取

    微信小程序js 字符串截取 console.log(time) 输出:qwertyuiop console.log(time.substring(0, 5)) 输出:qwert

  9. 微信小程序 JS 字符串string与utf8编码的arraybuffer的相互转换

    微信小程序 JS 字符串string与utf8编码的arraybuffer的相互转换     &#8194最近在做一个微信小程序,和后端用websocket连接,后端要求传输过去的信息是UTF ...

最新文章

  1. 在 Windows XP 中,无法使用 Windows 图片和传真查看器来查看图片
  2. suse linux 软件包安装,SUSE Linux 11系统rpm包离线安装GCC
  3. lua源代码分析01:lua源代码结构分析
  4. Scala基础教程(三):访问修饰符、运算符
  5. 函数与导数题目类型和解法思路的总结
  6. bzoj 3173 最长上升子序列
  7. 快速幂运算 《挑战程序设计竞赛》
  8. MATLAB无边框输出图像
  9. java多线程初识4
  10. 局域网屏幕共享_我把手机、平板、笔记本,变成了电脑的第二屏幕。
  11. Python 实现单词翻译
  12. ftp下载工具 免费,7大值得推荐的免费版ftp下载工具
  13. MySQL5.7源码在MacOS+Clion上的单步调试
  14. iOS开发 - 使用IJKPlayer时,关于需求要边下边播的缓存功能,退回来后播放缓存不再耗流量
  15. PTA 吉老师的回归
  16. 快排三种基本解法以及两种快排优化
  17. Linux各种问题解决方案
  18. readelf, nm
  19. 抽油烟机CCC认证介绍以及CCC认证申请
  20. POJ 1984 Navigation Nightmare 多权值并查集

热门文章

  1. RFC3920 xmpp协议
  2. 3.10 杭电复试题2012
  3. PTA 7-2 简化的插入排序 (15 分)本题要求编写程序,将一个给定的整数插到原本有序的整数序列中,使结果序列仍然有序。
  4. base64字符串实现下载文件
  5. PADS 快捷命令(无模指令)
  6. 情感分析Sentiment Analysis 知识资料全集(入门/进阶/论文/综述/视频/专家,附查看
  7. java并发编程学习三——wait/notify与park/unpark
  8. 深度学习06 - LSTM网络-处理可变长序列输入问题
  9. python二维数组去重复_python 去除二维数组/二维列表中的重复行方法
  10. Matlab 常见错误(1)——提示“数组索引必须为正整数或逻辑值”或者“索引超出数组元素的数目”