2017-06-15 22 views
2

これは私のコードです:ランダムに実行するようにiMacrosを設定するにはどうすればよいですか?

TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:check1 CONTENT=YES  
TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:check8 CONTENT=YES  
TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:check14 CONTENT=YES  
TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:check19 CONTENT=YES  
TAG POS=1 TYPE=SELECT ATTR=ID:t_score CONTENT=%0.75      
TAG POS=1 TYPE=BUTTON ATTR=TXT:Submit<SP>Number 

私はそれがCHECK1からcheck6に異なり、たとえば、ランダムに実行するようにライン1を設定したい
そして、2行目では、check7からに異なりcheck12
そして、3行目では、check13にcheck17異なり
そして、4行目では、それはあなたが乱数を生成するには、このような何かを行うことができcheck18
check21 し、ラインに5ナンバーが異なる0.75から

答えて

1

に異なり、私は思う:

SET !VAR1 EVAL("Math.random() > 0.5 ? : 'check1' : 'check6'") 
TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:{{!VAR1}} CONTENT=YES  

EVAL関数を使用すると、JavaScriptを呼び出して任意の計算を実行できます。 Math.random()は0と1の間の乱数を生成するので、check1、時間の50%を選択した時間の50%check6。実際の要件はminmax間のラベルを生成する場合

さらに、この代替は(adapted from hereを)仕事ができる:

SET !VAR1 EVAL("var min = 1; var max = 6; 
       var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min; 
       'check' + randomNumber;") 

は、あなたの様々な例についてminmaxを微調整。パーセントのオプションについて、あなたは試みることができる:

SET !VAR1 EVAL("var min = 75; var max = 100; 
       var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min; 
       '%' + randomNumber/100.0;") 

これは75と100の間の乱数を生成し、その後、割合に変換する100.0で分割します。 3桁の有効数字が必要な場合は、750,1000,1000.0などを使用することができます。

(以上をすべて1行にする必要があります。読みやすくするために分割しています)

+0

チェック1からチェック6の中から選択したいのは何ですか?たとえば、2をチェックするか3をチェックする... –

+1

OK、さらに詳細が追加されました! –

+0

ありがとう、それは有用だった –

関連する問題