如何将 excel 中的 Floor 转换为 Unity Mathf?

如何将 excel 中的 Floor 转换为 Unity Mathf?我在 Excel 中有一个这样的程序方程:

= FLOOR(MOD(5, 20) * 0.2, 1)

我想将其转换为 C# 脚本,但我不能。我已经尝试过:

float test = Mathf.Floor((5 % 20) * (1 / 5));

但这不是我想要的。我想要的答案是1(就像 Excel 的结果),但在 C# 脚本中它是0。请给我一些建议,谢谢!


侃侃无极
浏览 75回答 1
1回答

开心每一天1111

1 / 5是一个整数除法,结果为0! 所以Mathf.Floor((5 % 20) * 0);显然也是0。您应该float通过简单地使用float两个操作数中至少一个的值来使用除法1f / 5f或者为什么不直接使用该float值0.2f所以你的线应该是float test = Mathf.Floor(5 % 20 * 0.2f);注意:如果您想直接获取结果作为int值,您可能需要使用Mathf.FloorToInt。只是为了完整性:ExcelFLOOR有第二个参数significance您想要舍入的倍数。为了在你的行中也假装你会这样做var result = Mathf.Floor(5 % 20 * 0.2f / significance) * significance;
打开App,查看更多内容
随时随地看视频慕课网APP