Meter un color en una variable? Es posible?

Maaarc

Refloto cambiando el contenido un 100%.

/////////////////////////////////////
//                                 //
// Marc González Planes | 1WOPE    //
//  Semafor Examen                 //
//                                 //
/////////////////////////////////////

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>

/* Programa del semafor */

        /* Estructura del semafor */
// Variables estructura
int l=0;  // Lineas del semafor(llarg)
int c=0;  // Primer semafor(ample)
int c1=0; // Segon semafor

         /*Control del semafor i Maquina */
// Variables de control 
int c_Estat=0; // Estat de la ME 
int c_Temps=0; // Temps que esta aturat "voltes"

// Variables de entrada
int e_Esp=0; // Entrada element Especial
int e_Marxa=0;// Encendre 
int e_Paro=0;// Parar semafor (Estalvi energetic per pobles petits)


// Variables de sortida (llums)
int sp_V=0; // SP= Semafor Principal V=Verd
int sp_G=0; // G=Groc/Ambar
int sp_R=0; // R=Roig
int ss_V=0; // SS=Semafor Secundari V=Verd
int ss_G=0; // G=Groc/Ambar
int ss_R=0; // R=Roig


int main(){
    while(1){
             /* Dibuixo els semafors */
                gotoxy(10,10); //Centrar els semafors -Estetic-
                printf("Semafor carrer principal\n\n\n\t\t");
                gotoxy(50,10); 
                printf("Semafor carrer secundari\n\n\n");
    
while(l<=12){ // 12 lineas creen el semafor printf("\n\t\t"); //Creo linea nova y centro el semafor principal while(c<=6){ textcolor(15); if (((l>0)) && ((l<4)) && ((sp_R==1))) textcolor(12); if (((l>4)) && ((l<8)) && ((sp_G==1))) textcolor(14); if (((l>8)) && ((l<12)) && ((sp_V==1))) textcolor(10); printf ("%c",475); c++; } printf("\t\t\t\t\t"); // Centro el semafor sota el text while(c1<=6){ if (((l>0)) && ((l<4)) && ((ss_R==1))) textcolor(12); if (((l>4)) && ((l<8)) && ((ss_G==1))) textcolor(14); if (((l>8)) && ((l<12)) && ((ss_V==1))) textcolor(10); printf("%c",475); c1++; } l++; // Augmento la longitud c=0; //Reinicio variables de amplada c1=0; } /* Dibuix finalitzat */ switch(c_Estat){ case 0: //Tot Apagat fins que encenc el semafor Actualment estat de verificació sp_V=0; sp_G=0; sp_R=0; ss_V=0; ss_G=0; ss_R=0; c_Estat=1; break; case 1: // Encenc SP=Verd SS=Roig sp_V=1; sp_G=0; sp_R=0; ss_V=0; ss_G=0; ss_R=1; c_Temps++; if(c_Temps>10000){ c_Estat=2; c_Temps=0; } break; case 2: //SP=Ambar SS=Roig sp_V=0; sp_G=1; sp_R=0; ss_V=0; ss_G=0; ss_R=1; c_Temps++; if(c_Temps>3000){ c_Estat=3; c_Temps=0; } break; case 3: //SP=Roig SS=Verd sp_V=0; sp_G=0; sp_R=1; ss_V=1; ss_G=0; ss_R=0; c_Temps++; if(c_Temps>10000){ c_Estat=4; c_Temps=0; } break; case 4: //SP=Roig SS=Ambar sp_V=0; sp_G=0; sp_R=1; ss_V=0; ss_G=1; ss_R=0; c_Temps++; if(c_Temps>3000){ c_Estat=1; c_Temps=0; } break; } } }

Se trata del diseño de un semaforo, lo que me falla es que no entra en los Cases del switch entonces, los colores no se pintan xd A saber que mierdas esta mal.

Un ayuda please!

Maaarc

He modificado todo el contenido del post.

PandragoQ

#1 Creo que te estas liando demasiado para una cosa tan sencilla..... y conio.h??? En serio estas usando el compilador de Borland?? en 2012??

En cuanto a tu problema.... si que entra en el switch, con tu codigo, y quitando todas las historias del conio.h pasas por el case 0:

Otra cosa es que no pintes el semaforo, sencillamente por lo enrevesado de tu codigo.

1 respuesta
Yandr0s

Uff lo siento no entiendo el catalan

8
elkaoD

#3 si no me equivoco conio aún está en VS2010.

1 respuesta
PandragoQ

#5 en serio?? mira que es vieja esa libreria....

Kr4n3oK

Por favor no usar gotoxy

Usuarios habituales

  • Kr4n3oK
  • PandragoQ
  • elkaoD
  • Yandr0s
  • Maaarc