課題1 基本思想 ( No.8 )
日時: 2020/12/30 22:37
名前: REDCHEEKS

縛って良いのなら、プログラムは非常に単純になります。でも、

> 身体を拘束するのではなく、自ら尻を突き出し、自らの意思で罰を受ける。

これが基本思想なので「逃げるオシリのアルゴリズム」が必要になります。

動作例はこちら、

http://www2s.biglobe.ne.jp/~nod/nod2/patio/patio.cgi?mode=view2&f=494&no=75

上記動作例では、パーン、パーン、パーン、と3発でオシリ引っ込めてしまっています。
ですがこれは人によってまちまち、2発でオシリを引っ込める人もいれば、4発まで耐える人もいます。
これらのすべてに対応するためのアルゴリズムを考える必要があります。


p.s. 要するに「痛がって尻を引っ込める」という身体的反応に対して、コンピュータが臨機応変にどう対応するかという実にサディスティックでかつエロチックな課題です。
どうぞ興奮しながらプログラミングしてください。

課題1 仕様 ( No.9 )
日時: 2022/03/27 12:20
名前: REDCHEEKS

(1) お仕置き宣言を表示する。
「これから罰としてオシリをN回叩きます。 パンツ下ろして、オシリ出しなさい。」と表示する。
※ Nには指定された回数を表示する。

(2) お尻が突き出されるまで待つ。

(3) お仕置き開始宣言を表示する。「始めます、歯を食いしばれ!」

(4) 指定された回数分お尻を叩く。

(5) 割り込み処理
(4)の途中で逃げた場合の処理は、初回、2回目、3回目に分けてそれぞれ(5-1)(5-2)(5-3)の処理を行う。
4回目以降は、(5-2)(5-3)の処理を繰り返す。
さらに、復帰までの時間をカウントし (6) を行う。

(5-1) 初回の場合
お叱りメッセージを出す。
「逃げてはいけません、あとN回残っています、ちゃんとオシリを突き出しなさい。」

(5-2) 2回目の場合
警告メッセージを出す。
「あとN回残っています、今度逃げたら回数を増やします、最後まで我慢しなさい。」

(5-3) 3回目の場合
お叱りメッセージを出すとともに残り回数を増やす
「逃げたのでオシリタタキ1回増やしました。 逃げれば逃げるほど辛くなります、我慢しなさい。」

(6) 逃げた後なかなか戻らない場合、15秒後に警告、24〜28秒後にカウントダウン、30秒後に残り回数を増やす処理を行う。
それ以降も(6-1)〜(6-3)を繰り返す

(6-1) 15秒後
警告メッセージを出す
「早くオシリを出しなさい! 早く出さないと回数を増やします。」

(6-2) 24〜28秒後
カウントダウンメッセージを出す。「 ご、よん、さん、に、いち、 」

(6-3) 30秒後
お叱りメッセージを出すとともに残り回数を増やす
「時間内に戻らないのでオシリタタキ1回増やしました。 」

(7) (6)から復帰した場合「始めます、うんと痛くします、辛抱しなさい!」とメッセージを出した後、(4)を再開する。

(8) 最後まで進んだ場合は、次のメッセージを出す。
「部屋の隅でオシリを出したまま立ってなさい。」
http://mediasp.kir.jp/img20220326/imgloglog-box/img20140206224647.jpg

課題1 ライブラリ ( No.10 )
日時: 2022/03/27 12:20
名前: REDCHEEKS

ライブラリ関数としては、以下のものがあり、これを組み合わせてアルゴリズムを構築します。

関数名:CanSpank()
機 能:オシリが突き出されスパンキング可能な状態である事を確認する
引 数:なし
戻り値:スパンキング可能ならば 真(true) 不可能ならば 偽(false)

関数名:Spank()
機 能:オシリを叩く
引 数:なし
戻り値:なし

関数名:Say("メッセージ")
機 能:メッセージを表示する
引 数:表示する文字列
戻り値:なし

関数名:SayAdd("メッセージ")
機 能:メッセージを追加表示する
引 数:表示する文字列
戻り値:なし

関数名:WaitSec();
機 能:1秒待つ
引 数:なし
戻り値:なし

http://mediasp.kir.jp/img20220326/imgloglog-box/img20201230020709.jpg