gpt4 book ai didi

javascript - 尝试将半复杂的数学公式转换为 JavaScript

转载 作者:行者123 更新时间:2023-12-03 06:24:49 25 4
gpt4 key购买 nike

我是新手,刚刚开始尝试编写自己的应用程序,我的第一个应用程序是计算器,但我在数学函数方面遇到了麻烦。我有一个公式,并且已经实现为 JavaScript 函数,但无论我做什么。我似乎无法获得正确的返回值。

以下是公式(用于药物转化):

enter image description here

美沙酮 Fudin 因子(由 Jeffrey Fudin 博士和 Jason Andrew Fudin 博士、工程师、硕士开发)将吗啡转换为美沙酮时的公式:

美沙酮毫克 = X/21 {5.7- 3*sin [90/((110/x)5 + 1)] - sin [90/((320/x)7 + 1)]}

X 是输入参数(吗啡数量)

我的代码:

function MethadoneConvert (input){
console.log("Methadone Convert Input = "+input);
var drug;
var pre1 = 110/input;
var sin1 = Math.pow(110/input,5)+1;
var sin2 = 3*Math.sin(sin1);
var sin3 = Math.pow(320/input,7)+1;
var sin4 = 90/sin1;
var sin5 = 90/sin3;
var sin6 = Math.sin(sin4);
var sin7 = Math.sin(sin5);
var sin8 = 3*sin6;
input = input/21;
var input2 = 5.7-sin8-sin7;
drug = input*input2;
console.log("MethadoneConvert result = " + drug);
return drug;
}

30mg 应该返回 8.1mg ,目前它返回所有错误的数字。

我尝试过用更少的步骤对代码进行更简单的变体,但它也不起作用,显然我对代码到数学的理解非常有限。

非常感谢任何帮助,该计算器用于帮助医生。

编辑:var sin2 是多余的,而是在 var sin8 处完成,对于我对在程序中实现数学的明显严重理解不足表示歉意,目前 30 for X 返回 7.56 。

返回率也下降至 50,然后回升至 60,这是不应该发生的,相关性应该是线性的。

最佳答案

将方程转换为代码的提示

  • 使用变量可以让方程更容易阅读。

  • 在使用三 Angular 函数之前,请确保先转换为弧度。

  • 密切关注order of operations .

function toRads(angle) {
return angle * (Math.PI / 180);
}

function MethadoneConvert(x) {
console.log("Methadone Convert Input =", x, "mg");

var sin1 = Math.sin(toRads(90 / (Math.pow(110 / x, 5) + 1)));
var sin2 = Math.sin(toRads(90 / (Math.pow(320 / x, 7) + 1)));

var output = x / 21 * (5.7 - 3 * sin1 - sin2);

console.log("Methadone Convert Output =", output.toFixed(1), "mg");
return output;
}

MethadoneConvert(30);

关于javascript - 尝试将半复杂的数学公式转换为 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38703834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com