gpt4 book ai didi

c# - 转换具有几种不同比率的多组数字的最佳方法

转载 作者:行者123 更新时间:2023-11-30 12:36:48 25 4
gpt4 key购买 nike

我正在为阿片类药物成瘾者开发一个减少伤害的开源应用程序。

此应用程序的一个功能是常见阿片类药物之间的转换(以 mg/mcg 为单位),因此人们不会意外服用过量。

如果您在道德上反对阿片类药物成瘾并且因为您的道德而不会做出回应,请考虑此应用程序是为了减少危害。这样人们就不会死。

我有这个数据..

3mg morphine IV = 10mcg fentanyl IV
2mg morphine oral = 1mg oxycodone oral
3mg oral morphine = 1mg oxymorphone oral
7.0mg morphine oral = 1mg hydromorphone oral
1mg morphine iv = .10mg oxymorphone iv
1mg morphine oral = 1mg hydrocodone oral
1mg morphine oral = 6.67mg codeine oral
1mg morphine oral = .10mg methadone oral

我有一个文本框,用户可以输入以 mg(双倍)为单位的源剂量。在此下方,我有用于源物质(即:吗啡)和目标物质(即羟考酮)的单选框用于转换..

我一直在努力想出最有效的方法来做到这一点,但几乎每一种方法都显得草率。如果我要做类似的事情

public static double MorphinetoOxycodone(string morphineValue)
{
double morphine = Double.Parse(morphineValue);
return (morphine / 2 );
}

我还必须为 OxycodonetoMorphine、OxycodonetoCodeine 等创建一个功能。然后最终会得到几十个功能。

必须有比我想念的更简单的方法。

如果您注意到,我所有的转换都使用吗啡作为基值。使用吗啡值将一种阿片类药物转换为另一种阿片类药物的最简单方法可能是什么?例如,如果口服 1 毫克吗啡等于 1 毫克氢可酮,而口服 1 毫克吗啡等于 .10 毫克美沙酮,我难道不会乘以 1*.10 得到氢可酮-> 美沙酮值吗?实现这个想法是我遇到的最大麻烦。

如有任何帮助,我们将不胜感激。如果您愿意,我会将您的姓名/昵称添加到该程序的致谢名单中。世界上很多很多人可能会使用它(我也将它翻译成多种语言)并且知道你的工作可以帮助一个瘾君子免于死亡。我认为这是一件好事 :)

-科里

最佳答案

我会使用一组吗啡转化率,以及相应的药物枚举:

static enum Drug { Morphine, Fentanyl, Oxycodone, Oxymorphone, ... };
static double[] ratio = {1.0, 3.33, 0.5, 0.33, ... };

public static double ConvertToMorphine(Drug drug, double amount)
{
return amount / ratio[(int)drug];
}

public static double ConvertFromMorphine(Drug drug, double amount)
{
return amount * ratio[(int)drug];
}

public static double Convert(Drug from, Drug to, double amount)
{
return ConvertFromMorphine(to, ConvertToMorphine(from, amount));
}

这样,您可以获得任何想要的转化,如下所示:

Convert(Drug.Fentanyl, Drug.Oxymorphone, 5)

这会给你相当于 5 毫克芬太尼的羟吗啡酮。
免责声明:我没有编写太多 C# 代码,所以我的语法可能不正确。

关于c# - 转换具有几种不同比率的多组数字的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2536566/

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