課題に対するキーボードからの入力 (標準入力) を {} ブロックに対する各入力行と見れば、 このプログラムのおおまかな設計図として、 次のようなものが考えられます。
BEGIN{
# (1) 課題文を作成して画面に表示
# (2) 現在時刻を記憶 (入力開始時刻)
}
{ ## ここはキーボードからの 1 行の入力が済んだ後に実行される
# (3) 現在時刻を記憶 (入力終了時刻)
# (4) 入力行と課題文とを比較
# (5) 違いがなければ終了し、
# 違いがあればその結果を表示し、現在時刻を記憶 (入力開始時刻)
}
END{
# (6) 途中でやめた場合はそのような表示をする
# (7) 正常終了した場合はそのような表示をする
}
ここでは、AWK のコメント (# から行末までが AWK のコメント) の形で
書いてみました。
ちなみに、私がプログラムを実際に書くときは、
だいたいいつもこのようなおおまかな設計図から書き始めます。
後はこの (1)
(7) の部分を実際に作っていけばいいわけです。