これは私の最初の投稿です。質問をお読みいただき、誠にありがとうございます。
私は初心者のコーダーです。私は10年前に取得したコンピュータサイエンスのマイナーを持っています。簡単なコーディングをしたいという衝動に駆られ、チャンスが訪れたので、やりました!
ゲームの開発では、プログラムを実行して、特定のパラメーターを使用して特定の結果が得られる可能性を判断したいと思いました。私は興奮してそれが成功するポイントに到達しましたが、Google Scriptsは、勝率を計算するために60,000,000の可能なシナリオの実行を処理できませんでした。
「エラー:最大実行時間を超えました」というメッセージが表示されました。
私は自分とこのプログラムを実行する間の最短経路を見つけようとしています。アイデア:
1)最大実行時間を削除して、1日だけかかるようにする方法はありますか?Google Scriptsで実行する方法は他にありますか?2)乱数を入力することで、より少ない試行回数を実行できる可能性があります。Google Scriptsで乱数を生成する方法はありますか?3)Google Scripts以外でこの種のことを行う必要がありますか?もしそうなら、私が調べなければならないMac用の無料/手頃なコンパイラはありますか?Xcodeにインポートしてみましたが、戸惑い、簡単なコンパイル場所にたどり着けないようです。また、「C」にインポートすると、互換性の問題が発生します。私はそれを吸い上げてここでそれを改造しなければならないかもしれませんが。
参考までに、タイムアウトする関数は次のとおりです。
function dieFeeder(winCount, fSkill, fMagnitude, fHeart, fDie1, fDie2, fDie3, fDie4, fDie5, cSkill, cMagnitude, cHeart, cDie1, cDie2, cDie3, cDie4, cDie5){
// a parent function to function questionMatrix, feeds the changing dice into it
var matrixWinner;
//This 'for' clause keeps going until all dice permutations have been tried out
for (var i=0; i<60466176; i++){
//This part changes the dice to go through all combiations in a way similar to counting in base 6
if (cDie5 == 7){
cDie5 = 1;
cDie4 = cDie4+1;
}
if (cDie4 == 7){
cDie4 = 1;
cDie3 = cDie3 +1;
}
if (cDie3 == 7){
cDie3 = 1;
cDie2 = cDie2 +1;
}
if (cDie2 == 7){
cDie2 = 1;
cDie1 = cDie1 +1;
}
if (cDie1 == 7){
cDie1 = 1;
fDie5 = fDie5 +1;
}
if (fDie5 == 7){
fDie5 = 1;
fDie4 = fDie4 +1;
}
if (fDie4 == 7){
fDie4 = 1;
fDie3 = fDie3 +1;
}
if (fDie3 == 7){
fDie3 = 1;
fDie2 = fDie2 +1;
}
if (fDie2 == 7){
fDie2 = 1;
fDie1 = fDie1 +1;
}
cDie5 = cDie5 + 1;
//This part checks to see who wins and increases the winCount if it was the Favorite
matrixWinner = questionMatrix(fSkill, fMagnitude, fHeart, fDie1, fDie2, fDie3, fDie4, fDie5, cSkill, cMagnitude, cHeart, cDie1, cDie2, cDie3, cDie4, cDie5);
if (matrixWinner == 'favorite'){
winCount = winCount +1;
}
}
return winCount;
}