私は反射神経ゲームを作っています。これが出力です-
__________________________________________________________________________
Reflex game initiated. Press ENTER to begin the game, and then press ENTER
after the asterisks are printed to measure your reflexes!.
*************************
Your result: 0.285606 seconds.
logout
[Process completed]
__________________________________________________________________________
ただし、小さな問題が1つあります。Enterキーを押してゲームを開始してから星が印刷されるまでに、0〜10秒(確率変数に基づく)があります。その間、プレイヤーがENTERを押すと、反射時間として記録されます。したがって、星が印刷される前に、コードがENTERボタンを読み取らないようにする方法が必要です。コード -
#!/usr/bin/perl
use Time::HiRes qw(sleep);
use Time::HiRes qw(gettimeofday);
#random delay variable
$random_number = rand();
print "Reflex game initiated. Press ENTER to begin the game, and then press ENTER after the asterisks are printed to measure your reflexes!.\n";
#begin button
$begin = <>;
#waits x milliseconds
sleep(10*$random_number);
#pre-game
$start = [ Time::HiRes::gettimeofday() ];
print "\n****************************\n";
#user presses enter
$stop = <>;
#post game
$elapsed = Time::HiRes::tv_interval($start);
#delay time print
print "Your result: ".$elapsed." seconds.\n";