微信小程序JS编写一元三次方程盛金公式解法代码片段
话不多说,直接上代码!(只是片段,参数请自行撮合)
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编写一元三次方程盛金公式解法代码片段相关推荐
- 一元三次方程-盛金公式求解
原理参考-百度百科(http://baike.baidu.com/link?url=eA-bEvbcOBM2XmA4rzIG-lgci4MQdQcr7lCzCHBW-qG-qcPaDNovXp_jYx ...
- 【Note】微信小程序js使用农历(一行代码)
[Note]微信小程序js使用农历 0 直接输出 var data_ = new Date('2022/10/27 00:00:00') console.log(data_.toLocaleStrin ...
- 微信小程序js把数字转化成字母
微信小程序 js 把数字转化成字母 微信小程序 js 把数字转化成字母 for (let i = 0; i < 26; i++) {list[i] = {};list[i].name = Str ...
- 微信会员卡html修改样式模板,微信小程序 JS动态修改样式的实现代码
微信小程序这个坑啊,js动态修改样式,我们并不能用js或者jq 轻轻松松一行代码搞定.或者用removeClass addClass 来修改样式. 以下是一种动态修改样式的方法,原理是绑定数据,然后动 ...
- 微信小程序JS字符串操作方法汇总
微信小程序JS字符串操作方法汇总 JS对字符串进行切割截取 1.函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str="jpg|bmp|gif|ico| ...
- 微信小程序JS字符串操作方法汇总,包含切割截取split,合并字符串join,连接字符串concat,返回指定字符串charAt,提取字符串substring等
微信小程序JS字符串操作方法汇总 JS对字符串进行切割截取 1.函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str="jpg|bmp|gif|ico| ...
- 微信小程序js过度动画
微信小程序js过度动画 如有错误还请大神指教.如果觉得不错可以关注我了解更多. 一,我们先来看看效果吧. 二,我们用的是js的逐帧动画,css也可有相同的效果,我们这里用js // pages/arr ...
- 微信小程序js 字符串截取
微信小程序js 字符串截取 console.log(time) 输出:qwertyuiop console.log(time.substring(0, 5)) 输出:qwert
- 微信小程序 JS 字符串string与utf8编码的arraybuffer的相互转换
微信小程序 JS 字符串string与utf8编码的arraybuffer的相互转换  最近在做一个微信小程序,和后端用websocket连接,后端要求传输过去的信息是UTF ...
最新文章
- 在 Windows XP 中,无法使用 Windows 图片和传真查看器来查看图片
- suse linux 软件包安装,SUSE Linux 11系统rpm包离线安装GCC
- lua源代码分析01:lua源代码结构分析
- Scala基础教程(三):访问修饰符、运算符
- 函数与导数题目类型和解法思路的总结
- bzoj 3173 最长上升子序列
- 快速幂运算 《挑战程序设计竞赛》
- MATLAB无边框输出图像
- java多线程初识4
- 局域网屏幕共享_我把手机、平板、笔记本,变成了电脑的第二屏幕。
- Python 实现单词翻译
- ftp下载工具 免费,7大值得推荐的免费版ftp下载工具
- MySQL5.7源码在MacOS+Clion上的单步调试
- iOS开发 - 使用IJKPlayer时,关于需求要边下边播的缓存功能,退回来后播放缓存不再耗流量
- PTA 吉老师的回归
- 快排三种基本解法以及两种快排优化
- Linux各种问题解决方案
- readelf, nm
- 抽油烟机CCC认证介绍以及CCC认证申请
- POJ 1984 Navigation Nightmare 多权值并查集
热门文章
- RFC3920 xmpp协议
- 3.10 杭电复试题2012
- PTA 7-2 简化的插入排序 (15 分)本题要求编写程序,将一个给定的整数插到原本有序的整数序列中,使结果序列仍然有序。
- base64字符串实现下载文件
- PADS 快捷命令(无模指令)
- 情感分析Sentiment Analysis 知识资料全集(入门/进阶/论文/综述/视频/专家,附查看
- java并发编程学习三——wait/notify与park/unpark
- 深度学习06 - LSTM网络-处理可变长序列输入问题
- python二维数组去重复_python 去除二维数组/二维列表中的重复行方法
- Matlab 常见错误(1)——提示“数组索引必须为正整数或逻辑值”或者“索引超出数组元素的数目”