見出し画像

なでしこさんで猫猫猫猫猫

今週も頭が悪いので、noteの記事を書いていない状態で週streak継続の締切が迫ってきた。
今週はアニメの枠審査を行い、スケジューリングを開始したが、そもそもそのタイミングも遅すぎる。
noteに書こうとしたネタはあり、タイトルと画像は設定したが、結局書けなかった。
嘆いても頭の悪さは変わらない。
まあ、今回も雑プログラムで繋ぐよ。

今回やったこと

なでしこで、猫をいっぱい生む。
乱数で続けるかの判定を行う。

プログラム

猫猫猫猫猫 (プログラム貯蔵庫)

ポイント

画面の用意

スタートボタンは「スタートにゃ!」のボタン作成。
改行作成。
結果欄は空のラベル作成。
改行作成。
結果カウント欄は空のラベル作成。

スタートするためのボタンと、結果を表示するためのラベルを用意する。

処理を開始させる

変数の猫カウントは0。

スタートボタンをクリックした時には
  スタートボタンにオフをDOM有効設定。
  猫カウントは0。
  結果欄に空をテキスト設定。
  結果カウント欄に空をテキスト設定。
  {関数}猫チェックを1秒後。
ここまで。

猫を何匹生んだかをカウントする変数を用意する。
スタートボタンが押されたら、実行中に再スタートされないようにし、結果をクリアし、猫を生む処理を開始する。

猫を生む

●猫チェックとは
  定数の乱数配列は4のランダム配列生成。
  変数の乱数生成値は0。
  変数の乱数最大値は0。
  乱数配列を反復
    乱数生成値は乱数生成値×256+対象。
    乱数最大値は乱数最大値×256+255。
  ここまで。
  もし、乱数生成値÷乱数最大値<0.02ならば
    結果カウント欄に「{猫カウント}匹生まれました!」をテキスト設定。
    スタートボタンにオンをDOM有効設定。
  違えば
    結果欄に「{結果欄のテキスト取得}🐱」をテキスト設定。
    猫カウントを1増やす。
    {関数}猫チェックを0.05秒後。
  ここまで。
ここまで。

乱数をバイト配列の形で生成し、1個の数値にまとめて理論上の最大値で割ることで0以上1以下の実数に変換する。
それが猫を生むのをやめる確率として設定した値 (0.02) 未満なら、生まれた匹数を表示し、スタートボタンを有効化して終了する。
そうでなければ、猫を生み、少し後に再びこの処理を行う。

おわりに

なでしこさんで、猫をいっぱい生むことができた。
一度に100匹以上生まれたらラッキー?

いいなと思ったら応援しよう!

コメント

コメントするには、 ログイン または 会員登録 をお願いします。
なでしこさんで猫猫猫猫猫|みけCAT
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1