bool passed = false;
clock_t start = clock();
while(true)
{
if(clock()-start>3000) { passed=true; break; }
if(kbhit())
{
// obsługa wczytania danych, obliczenia itp
}
}
if(passed)
{
// obsługa sytuacji, gdy zabraknie czasu
}
Taki pseudo kod obrazujący jak ma to zadziałać.