制限時間内のキー入力検査
Posted feedbacks - diff
しまった一部消し忘れていました
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | --- doukaku64.c.org 2007-10-02 22:04:20.984375000 +0900
+++ doukaku64.c 2007-10-02 22:04:25.062500000 +0900
@@ -20,7 +20,6 @@
printf("input:[%s] => ", str); fflush(stdout);
tos.c_lflag &= ~(ICANON | ECHO);
-// tos.c_lflag |= ECHO;
tos.c_cc[VMIN] = 1;
tos.c_cc[VTIME] = 0;
tcsetattr( 0, TCSADRAIN, &tos );
@@ -47,7 +46,7 @@
}
else
{
- printf("result: NG / input:[%s]\n", in);
+ printf("result: NG\n");
}
}
else
|
3回実行というのを見落としてました。
1 2 3 4 5 6 7 8 9 10 11 | --- orig.cpp Wed Oct 3 04:14:39 2007
+++ main.cpp Wed Oct 3 04:15:00 2007
@@ -97,7 +97,7 @@
{
try
{
- while (true)
+ for (int i = 0; i < 3; ++i)
{
InputChecker(5, "ABCDEF");
}
|




raynstard
#3420()
Rating0/2=0.00
関数 InputCheckerは、以下の仕様を満たしてください。
たとえば、「InputCheker(5, "ABCDEF")」と指定した場合、 出力例はこんな感じです。
1. input(ABCDEF) =>と出力して入力待ちをし、ユーザーが「ABCDEF<ENTER>」を入力したとき、 入力開始から5秒以内ならば「OK」、5秒をこえていれば「TIME OUT」を出力します。 このとき、ユーザーがキーを押下しなければ1. を出力してから たとえ10秒たっていても「TIME OUT」にはならないので注意してください。 時間計測はあくまでユーザーが入力を開始してからです。
このお題はraynstardさんの投稿です。ご協力ありがとうございます。
[ reply ]