生成交叉和的按钮

Button generating a cross sum

我正在寻找 AS3 脚本的提示,不知道如何开始

按钮,如果点击则执行函数,输出预定义值作为数字字符串的交叉和。

示例:

交叉总和应为 10

点击按钮,函数生成数字55或82或37或523,即叉和为10的数字

知道了..... 该函数计算一个数字,交叉和为 50

function berechnen() {
var rand = Math.floor(Math.random() * 100000000000)
var sum = String(rand)
var qsum = 0;
for (var i = 0; i < sum.length; i++) {
    qsum += Number(sum.charAt(i));
}
if (qsum == 50) {
    summe.text = String(sum);
} else {
    berechnen()
}

}

另一种方法是使用 %(取模)而不是字符串。你可以像这样把它写成一行:

while (sum != 0) { qsum += sum % 10; sum /= 10; }

诀窍是模数只会给我们较长数字的最后一位数字,然后我们 divide by 10 到 trim 最后一个数字(从更长的数字开始),然后我们重新读取一个更新的数字长号的结束数字。

示例:
Long num = 1234,所以每个 trim 给出,4 然后 3 然后 2 然后 1 我们每次都会对它们求和.

用法:

myInt = cross_sum(50); //makes myInt hold answer result of function (where ExpectedValue input is 50).

和支持函数...

function cross_sum( ExpectedValue: int ) : int 
{
    var rand :int = Math.floor(Math.random() * 100000000000)
    var sum :int = Math.abs( rand );
    var qsum :int = 0;

    while (sum != 0) 
    {
        qsum += sum % 10; //get last digit of sum...
        sum /= 10; //trim down sum by 1 digit...
    }

    if ( qsum == ExpectedValue ) { return rand; } //# stop here and give back "rand" as answer result.
    else { cross_sum( expectedValue ); } //# else if wrong, try again...
}