数当てゲーム①

ランダムに生成された0~1000の数字を当てるゲーム

使用:変数、inputdialog、messagebox、assign、FlowDecision等


■公式動画より

Control Flow in UiPath Studio 1.2

https://www.youtube.com/watch?v=vF6XcQcs4Vc


1. assignを使用し、「random」という名前の箱(変数)を作る。

左側のボックスで右クリックし、create variableを選択して、randomという箱(変数)の名前を付ける。


2. 続いて、randomの中に0~1000の数字を1つ入れる。乱数は画像の通りnewRandom().Next(0,1000)で設定できるらしいので、assignの右側にnewRandom().Next(0,1000)を入力する。 これで「random = 0~1000の間の数字1つ」となる。


3. randomの数字を当てるゲームなので、数字を入力させる為のinputdialogを作り、入力された文字を「guess」という箱(変数)に入れる。guessは右側オプション画面Resultで設定する。箱の作り方は1と同じ。


4. 生成された0~1000の数字1つ(random)と、入力した数字(guess)が一致しているか確認する。正否を判断する為のFlowDecisionを画像のように作成し、random = guess と右側のConditionに入力する。これで random = guess の正否を判断する。(一回で当たった場合は約1/1000の確率!!)


5. 見事random = guess が 正(true) だった場合は、正解のメッセージボックスを表示する為、FlowDecisionの左側(true)に、メッセージボックスを繋げる。表示するテキストは"正解!!"のように""で囲む。当たった場合はメッセージボックスが表示され、ここで処理は終了となる。

文字はメッセージボックスのDouble-click to viewでも、クリック後の右側のオプション画面・contentでも、どちらでも入力可能。


6. 外れだった場合は「外れ!!」と表示するだけでは見当もつかないので、とりあえずヒントの設定をする。 入力した数字(guess)が生成された数字(random)より 大きかったのか小さかったのかを教える為、外れ側のルートに、今回は正否ではなく「大小」を判断する(教える)ルートを設定する。

画像の通りConditionに guess < random (randomの方が大きい)と入力し、 true(大きい場合)は右側に、false(小さい)の場合は右側に進むようにする。



7. ヒント(大小の結果)をそのまま出力する為、「ランダムの方が大きい」というメッセージを左側(guess < randomが正なのでtrueの左)に、「ランダムの方が小さい」というメッセージを右側に設定する。「大」と「小」のメッセージボックスを2つ作っても結果は同じですが、画像のようにassignを使用し、hintという箱にメッセージを入れている理由は9の項目で。




8. 外れの場合は再度数字を入力しなければならない為、 画像のように矢印を「大」と「小」から最初のinputboxへ繋げ、再度数字を入力させる。


9. inputboxで大きかったのか小さかったのかヒントを表示する為、画像のようにinputboxのlabelを「hint」に変更する。こうする事で、数字入力時にヒントを見ながら入力する事ができるようになる。初回入力時にはhintの中には何も入っていないので、空白が表示される。※画像2つめのdefaultで箱の初期値を設定する事も可能。


関連記事:数当てゲーム②数当てゲーム③

記事一覧:目次

uipathメモ

uipathの操作手順メモです。条件式や変数、VB.NET等の知識はほぼありませんので、分からないなりの操作方法になっています。適切な変数や配列、VB.NET等を使用する事で遥かに工数が減る部分もあると思いますので、その際はご教授頂けますと幸いです。