jueves, 28 de mayo de 2015

25 - Tutorial de C++ en español - Sleep temporizador (alarma)




En este capítulo del tutorial de C++ veremos como podemos crear un temporizador, para ello utilizaremos la función Sleep perteneciente a la librería windows.h, con Sleep podemos crear un retardo indicando los milisegundos, 1000 es igual a 1 segundo, esta función sumada a un búcle infinito nos permite crear un temporizador para realizar cualquier acción que sea necesaria, como ejemplo crearemos un programa que consistirá en una alarma donde el usuario introducirá los segundos tras los cuales empezará a zonar el sonido BEEP del ordenador.

alarma.cpp


#include <iostream>
#include <windows.h>
#include <sstream>
#include <string>

using namespace std;

void alarma(int segundos)
{
 int temporizador = 1;
 while (true)
 {
   cout << temporizador << endl;
   if (temporizador == segundos) cout << "**** ALARMA ****" << endl;
   if (temporizador > segundos) cout << "\a"; //BEEP
   Sleep(1000); //1 segundo
   temporizador++;   
 }    
}

int main(int argc, char *argv[])
{
 cout << "Segundos para que suene la alarma: ";
 string s;
 getline(cin, s);
 int segundos;
 if (istringstream(s) >> segundos) alarma(segundos);
 system("PAUSE");
 return 0;
}