我需要将一个int变量转换为double
我的朋友正在尝试将某种计算作为上课的一项任务,但他遇到了一些麻烦…希望您能为他提供帮助。
问题在于他从用户那里得到了一个int的输入(这必须是任务的一部分)。他正在尝试在下面的代码中将其转换为double,但这是行不通的。无论如何结果都是int。
double firstSolution = ((b1 * a22 - b2 * a12) / (a11 * a22 - a12 * a21));double secondSolution = ((b2 * a11 - b1 * a21) / (a11 * a22 - a12 * a21));
如果您需要更多说明,我会请他提供。提前致谢!
回答:
您必须将一个(或两个)参数传递给除法运算符double
:
double firstSolution = (b1 * a22 - b2 * a12) / (double)(a11 * a22 - a12 * a21);
由于您两次执行相同的计算,因此建议您重构代码:
double determinant = a11 * a22 - a12 * a21;double firstSolution = (b1 * a22 - b2 * a12) / determinant;
double secondSolution = (b2 * a11 - b1 * a21) / determinant;
这以相同的方式工作,但是现在有一个 隐式
强制转换为double。从int
到的转换double
是扩展原始转换的一个示例。
以上是 我需要将一个int变量转换为double 的全部内容, 来源链接: utcz.com/qa/397708.html