Дей-Лак, Код у тебя просили, чтобы лучше понять в ЧЁМ именно у тебя проблема. Так гораздо быстрей. А остальное...
В чём проблема-то? getch() насколько я помню, ждёт сама ввода, те повлиять на это ты не сможешь. Значит надо запустить цикл, в котором ожидать нажатие кнопки и проверять время. Если произошло первое событие, ты считываешь введённый символ и обрабатываешь его, если второе - ошибка.
В паскале была для этого замечательная ф-я KeyPressed, если у Borland C++ нет аналога, то её очень легко "сделать" самому, вот тут есть код:
http://www.merlyn.demon.co.uk/pas-extn.htm