Actionscript 3 在Actionscript 3中乘以小数
我正在为我的班级制作一个税务计算器,但我不知道如何将整数与小数相乘。我得把整数乘以0.13。这是我的密码Actionscript 3 在Actionscript 3中乘以小数,actionscript-3,flash,Actionscript 3,Flash,我正在为我的班级制作一个税务计算器,但我不知道如何将整数与小数相乘。我得把整数乘以0.13。这是我的密码 var amount:Number; var hst:int; amount_txt.restrict = "0-9"; calculate_btn.addEventListener(MouseEvent.CLICK, calculate); function calculate(event:MouseEvent):void { amount = Number(amount_t
var amount:Number;
var hst:int;
amount_txt.restrict = "0-9";
calculate_btn.addEventListener(MouseEvent.CLICK, calculate);
function calculate(event:MouseEvent):void
{
amount = Number(amount_txt.text);
total_txt.text = "You have spent a total of " + String(Math.round((amount * hst)) + "$")
}
我希望能尽快得到帮助,因为明天就要交了。如果这里的格式不正确,我深表歉意,但我向您保证在实际程序中它是正确的。谢谢原因是您的HST不是
号码
,而是整数
。要使其成为十进制数字,必须将其更改为数字
var amount:Number;
var hst:Number;
amount_txt.restrict = "0-9";
calculate_btn.addEventListener(MouseEvent.CLICK, calculate);
function calculate(event:MouseEvent):void
{
amount = Number(amount_txt.text);
total_txt.text = "You have spent a total of " + String(Math.round((amount *hst)) + "$")
}
给出两个输入值(整数值与分数数值)的预期输出示例。那么您的
金额=0.13
,但是hst
是多少?int
的默认值为零,因此现在您的代码正在执行0.13 x 0
,这将给出正确的0
。有什么问题吗?您的hst
是int,因此无法存储0.13。将其设置为Number
并填充0.13,应该可以。@Vesper可能hst
是int类型,因为它是神秘的整数?然后,它们再次将amount文本限制为0-9
,所以为什么不使用amount=int(amount\u txt.text)代码>?我只是希望Asker知道,number
用于处理分数,而int
仅处理整数(小数点被忽略)。您正在使用Math.round()
函数进行输出,该函数将始终返回int。它不像其他语言那样,精确到整数。如果您想将整数精确到某个精度,请执行类似于Math.round(value*n)/n
(n=10=1位小数,n=100=2位小数,n=1000=3位小数等等)的操作。另外,请确保您在hst
中存储了一个值作为VC。有人已经说过它将用0初始化,因此给定代码的结果将始终为零。