kir*_*rgy 1 php math electronics
我正在开发一些PHP代码,它与一个硬件进行通信,该硬件正在移动时钟上的物理手.基本上,我有一系列数字(分钟)在000到180之间,对应伺服位置000到180.
我面临的问题是我现在发现伺服只能移动到000到165之间的值.
有没有办法将给定数量在000到180范围内扩展到000到165?我一直在绞尽脑汁,任何帮助都会非常感激.
功能示例:
function convertScale($handVal)
{
//some code to convert scale from 000-180 to 000-165
return $convertedPos;
}
Run Code Online (Sandbox Code Playgroud)
它可以采取浮点吗?
function convertScale($handVal)
{
return $handVal * 165.0 / 180.0;
}
Run Code Online (Sandbox Code Playgroud)
如果没有,圆整到最接近的整数是有希望的:
function convertScale($handVal)
{
return round($handVal * 165.0 / 180.0);
}
Run Code Online (Sandbox Code Playgroud)
---编辑---
如评论中所提到的,可以通过以下方式轻松提供3位数字符串:
function convertScale($handVal)
{
return sprintf ("%03d", round($handVal * 165.0 / 180.0));
}
Run Code Online (Sandbox Code Playgroud)