Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для котвася

Пользователь


Сообщения: 147
Благодарности: 5

Профиль | Отправить PM | Цитировать


ЭВРИКА РАБОТАЕТ!!!!!!!
Код: Выделить весь код
//STOPWATCH.CPP
//Снкундомер в консоли.

#include <iostream>
using std::cout;
using std::cin;
using std::endl;
#include <iomanip>
using std::setw;
#include <time.h>
#include <windows.h>

void printStopWatch(int seconds = 0, int status = 0)
{
	system("cls");
	char *ptr[10] = {"СЕКУНДОМЕР", "РАБОТАЕТ", "CТОП"};
	cout << "********************" << endl;
	cout << "********************" << endl;
	cout << "|    " << setw(10) << *(ptr+status) << "    |" << endl; 
	cout << "|       " << setw(2) << seconds/60 << " : " 
		 << setw(2) << ((seconds < 60) ? seconds : seconds%60) << "    |" << endl;
	cout << "********************" << endl;
	cout << "********************" << endl;
	if(status==0)
		cout << "Нажмите клавишу Enter для начала...";
	if(status==1)
		cout << "Нажмите клавишу Enter для остановки...";
	   
}
void wait(int seconds)
{
	clock_t endwait;
	endwait = clock () + seconds * CLOCKS_PER_SEC ;
   	while((clock() < endwait)){	}
	return;
}

int main()
{
	setlocale(LC_ALL, ".1251");
	cout << "Приложение секундомер" << endl;
              int n = 0;
	bool status = true;
	printStopWatch(0,0);
	cin.get();
	while(status != false)
	{
		printStopWatch(n,1);
		wait(1);
		n++;
		if(GetKeyState(VK_RETURN) == false)
			status=false;
	}
	printStopWatch(n, 2);
	system("pause");
	return 0;
}
правда, через раз, резче Enter надо нажимать ☺☺☺☺
вот более совершенный цикл
Код: Выделить весь код
	while(status != false)
	{
		printStopWatch(n,1);
		wait(1);
		if(GetKeyState(VK_RETURN) == false)
		{
			status=false;
			break;
		}
		n++;
	}
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:25, 11-08-2010 | #6