Por que te complicas la vida con algo tan simple?Podrias hacer un ciclo de 1 hasta 5, y luego cambiar los colores de acuerdo a lo siguiente:Código: Text void luz::color(int var){if(var==1) {cout<<" ROJO\n ";}if(var==2) {cout<<" AMARILLO\n ";}if(var==3) {cout<<" VERDE\n ";}if(var==4) {cout<<" AMARILLO\n ";}if(var==5) {cout<<" ROJO\n ";}}; Ahora lo de los colores de pantalla, no es muy facil hacerlo, pero puedes buscar en la funciones de consola, en MSDN, especificamente SetConsoleTextAttribute.Saludos