BORLAND C++;
PROGRAMA 11: Colores, gotoxy y sleep
Para dar mejor formato y presentacion al programa existe la posibilidad y la herramienta para dar color al fondo y al texto, ¿como funciona esta herramienta? en el codigo de C++ tenemos la opción:
- textcolor(YELLOW); Este solo funciona para dar color a la letra y solo cuando el texto sea mostrado por cprintf("texto por colorear");
- textbackground(GREEN); Este pinta el fondo de un color en especifico
- system ("color 05"); Este funciona para dar color a la letra y al fondo a todo el programa y puede funcionar para el cout<<"se pintaran todos del mismo color cuando utilizen el cout"; y para el cin>>var;
La siguiente herramienta es el gotoxy el cual consiste en la localizacion del texto dentro del programa ahorrando el uso de la sangria, y poder colocarlo en cualquier lugar de la ventana. bajo la colocación del X,Y como si fuese un plano cartesiano.
El otro punto es poner temporizador mientras se ejecuta el programa y se hace mediante la herramienta sleep(1); es la cual procesara la transicion del programa. el numero (1); representalos milisegundos del temporizador asi que depende cuanto tiempo se desee
Ejemplo:
El siguiente ejercicio consiste en hacer un menu para ver la tablas de verdad utilizando el SWITCH-CASE, pedirle al usuario seleccionar una para mostrarla (mostrar la tabla de verdad y dibujo grafico), utilizar gotoxy para centrar la informacion en la ventana y ajustar el color de texto y fondo utlizando las tres herramientas para colorear y por ultimo utilizar el sleep.
#include
<dos.h>
#include
<conio.h>
#include
<iostream.h>
#include <stdio.h>
#include
<windows>
/*ALICIA CHAVEZ
ROMERO
2do CUATRIMESTRE
"C"
MECATRONICA
COLORES-SLEEP
*/
int log;
char resp;
void main()
{
d
{
clrscr();
system ("color
05");
gotoxy(25,5);
textcolor(2);
cprintf("%%%%%%%%%U T V M%%%%%%%");
gotoxy(15,6);
textcolor(WHITE);
cprintf("menu de
CI");
gotoxy(15,8);
textcolor(7);
cprintf("1.-
AND");
gotoxy(15,9);
textcolor(2);
cprintf("2.-
OR");
gotoxy(15,10);
textcolor(3);
cprintf("3.-
NOT");
gotoxy(15,11);
textcolor(4);
cprintf("4.-
XOR");
gotoxy(15,12);
textcolor(5);
cprintf("5.-
NAND");
gotoxy(15,13);
textcolor(6);
cprintf("6.-
SALIR");
gotoxy(15,14);
textcolor(8);
cprintf("SELECCIONA LA OPCION E
INGRESALA....");
cin>>log;
switch(log)
{
case 1:
sleep(1);
gotoxy(15,16);
sleep(1);
cout<<".";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<"...";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<".................ESPERE.....";
sleep(2);
clrscr();
textcolor(WHITE);
cout<<"HA SELECCIONADO";
gotoxy(18,4);
textcolor(7);
cprintf(" A N D ");
gotoxy(15,5);
textcolor(WHITE);
cprintf(" A B |
C");
gotoxy(15,6);
textcolor(WHITE);
cprintf(" 0 0 |
0");
gotoxy(15,7);
textcolor(WHITE);
cprintf(" 0 1 |
0");
gotoxy(15,8);
textcolor(WHITE);
cprintf(" 1 0 |
0");
gotoxy(15,9);
textcolor(WHITE);
cprintf(" 1 1 |
1");
gotoxy(40,5);
textcolor(WHITE);
cout<<"SIMBOLO";
gotoxy(40,6);
textcolor(WHITE);
cprintf(" _____
");
gotoxy(40,7);
textcolor(WHITE);
cprintf(" a----| |
");
gotoxy(40,8);
textcolor(WHITE);
cprintf(" |
& |---s");
gotoxy(40,9);
textcolor(WHITE);
cprintf(" b----|_____| ");
break;
case 2:
sleep(1);
gotoxy(15,16);
sleep(1);
cout<<".";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<"...";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<".................ESPERE.....";
sleep(2);
clrscr();
textcolor(WHITE);
cout<<"HA
SELECCIONADO";
gotoxy(19,4);
textcolor(2);
cprintf(" OR ");
gotoxy(15,5);
textcolor(WHITE);
cprintf(" A B |
C");
gotoxy(15,6);
textcolor(WHITE);
cprintf(" 0 0 |
0");
gotoxy(15,7);
textcolor(WHITE);
cprintf(" 0 1 |
1");
gotoxy(15,8);
textcolor(WHITE);
cprintf(" 1 0 |
1");
gotoxy(15,9);
textcolor(WHITE);
cprintf(" 1 1 |
1");
gotoxy(40,5);
textcolor(WHITE);
cout<<"SIMBOLO";
gotoxy(40,6);
textcolor(WHITE);
cprintf(" ________ ");
gotoxy(40,7);
textcolor(WHITE);
cprintf(" |
| ");
gotoxy(40,8);
textcolor(WHITE);
cprintf(" a----| |
");
gotoxy(40,9);
textcolor(WHITE);
cprintf(" |
>= 1 |---s ");
gotoxy(40,10);
textcolor(WHITE);
cprintf(" b----| | ");
gotoxy(40,11);
textcolor(WHITE);
cprintf(" |________| ");
break;
case 3:
sleep(1);
gotoxy(15,16);
sleep(1);
cout<<".";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<"...";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<".................ESPERE.....";
sleep(2);
clrscr();
cout<<"HA SELECCIONADO";
gotoxy(19,4);
textcolor(3);
cprintf(" NOT ");
gotoxy(15,5);
textcolor(WHITE);
cprintf(" A |
B");
gotoxy(15,6);
textcolor(WHITE);
cprintf(" 0 |
1");
gotoxy(15,7);
textcolor(WHITE);
cprintf(" 1 |
0");
gotoxy(40,5);
textcolor(WHITE);
cout<<"SIMBOLO";
gotoxy(40,6);
textcolor(WHITE);
cprintf(" _____");
gotoxy(40,7);
textcolor(WHITE);
cprintf(" |
| ");
gotoxy(40,8);
textcolor(WHITE);
cprintf("a ---| 1 |O--
s");
gotoxy(40,9);
textcolor(WHITE);
cprintf(" |_____| ");
break;
case 4:
sleep(1);
gotoxy(15,16);
sleep(1);
cout<<".";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<"...";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<"......";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<".................ESPERE.....";
sleep(2);
clrscr();
textcolor(WHITE);
cout<<"HA SELECCIONADO";
gotoxy(19,4);
textcolor(3);
cprintf(" XOR ");
gotoxy(15,5);
textcolor(WHITE);
cprintf(" A B |
C");
gotoxy(15,6);
textcolor(WHITE);
cprintf(" 0 0 |
0");
gotoxy(15,7);
textcolor(WHITE);
cprintf(" 0 1 |
1");
gotoxy(15,8);
textcolor(WHITE);
cprintf(" 1 0 |
1");
gotoxy(15,9);
textcolor(WHITE);
cprintf(" 1 1 |
0");
gotoxy(40,5);
textcolor(WHITE);
cout<<"SIMBOLO";
gotoxy(40,6);
textcolor(WHITE);
cprintf(" ________ ");
gotoxy(40,7);
textcolor(WHITE);
cprintf(" |
| ");
gotoxy(40,8);
textcolor(WHITE);
cprintf(" a----| |
");
gotoxy(40,9);
textcolor(WHITE);
cprintf(" |
= 1 |---s ");
gotoxy(40,10);
textcolor(WHITE);
cprintf(" b----| |
");
gotoxy(40,11);
textcolor(WHITE);
cprintf(" |________| ");
break;
case 5:
sleep(1);
gotoxy(15,16);
sleep(1);
cout<<".";
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<"...";
sleep(1);
gotoxy(15,17);
sleep(1);
gotoxy(15,17);
sleep(1);
cout<<".................ESPERE.....";
sleep(2);
clrscr();
textcolor(WHITE);
cout<<"HA
SELECCIONADO";
gotoxy(19,4);
textcolor(3);
cprintf("NAND");
gotoxy(15,5);
textcolor(WHITE);
cprintf(" A B |
C");
gotoxy(15,6);
textcolor(WHITE);
cprintf(" 0 0 |
1");
gotoxy(15,7);
textcolor(WHITE);
cprintf(" 0 1 |
1");
gotoxy(15,8);
textcolor(WHITE);
cprintf(" 1 0 |
1");
gotoxy(15,9);
textcolor(WHITE);
cprintf(" 1 1 |
0");
gotoxy(40,5);
textcolor(WHITE);
cout<<"SIMBOLO";
gotoxy(40,6);
textcolor(WHITE);
cprintf(" _____
");
gotoxy(40,7);
textcolor(WHITE);
cprintf(" a----| |
");
gotoxy(40,8);
textcolor(WHITE);
cprintf(" |
& |O---s");
gotoxy(40,9);
textcolor(WHITE);
cprintf(" b----|_____| ");
break;
case 6:
exit(0);
break;
clrscr();
default:
gotoxy(14,17);
cout<<"OPCION
INVALIDA"<<endl;
}
gotoxy(14,18);
cout<<"DESEA REVISAR OTRA CI <s=si><n=no>"<<endl;
cin>>resp;
if(resp=='s'|| resp=='S')
{
sleep(1);
gotoxy(15,20);
sleep(1);
cout<<".";
sleep(1);
gotoxy(15,21);
sleep(1);
cout<<"...";
sleep(1);
gotoxy(15,21);
sleep(1);
cout<<"............ESPERE UN MOMENTO
GRACIAS.....";
sleep(2);
}
else
{
exit(0);
}
}while(resp=='s' || resp=='S');
getche();
}
la primer etapa del programa es mostrar el menu y el texto ajustado al centro de la ventana (utilizacion del gotoxy) |
se muestra que el color de texto es fiusha ajustado por medio del system("color .."), ademas aparece el primer sleep en forma de puntos y con la palabra Espere |
se borra pantalla y aparece lo que selecciono el usuario para ver y se pregunta si desea volver a seleccionar. |
si el usuario escribio s, en este caso, se muestra la acción del segundo sleep realizando la misma accion, y se inicializa el programa. |
Por alguna razón el código al copiarlo se le mueven las llaves de su lugar lo que ocasiona errores de sintaxis por todos lados
ResponderEliminar>:v oe tu codigo no copila
ResponderEliminarSi puedes compartenos tu código fuente a través de un enlace. O google drive. Gracias!
ResponderEliminarps la verdd no se en que systema estas por que el void en windows no lo toma xd
ResponderEliminar