Foros de daboweb

MULTIMEDIA, Video digital, Grabación, Diseño gráfico, Diseño web, Programación => Webmasters - Diseño Web - Programación - Diseño gráfico => Mensaje iniciado por: mikelharris en 29 de Mayo de 2005, 05:08:01 pm

Título: Ayuda para este programa
Publicado por: mikelharris en 29 de Mayo de 2005, 05:08:01 pm
Al iniciarse el programa se visualizara al izquierda de la pantalla un rectangulo azul con dimensiones de 15 de ancho por 8 de alto, utilizando el caracter ascii DEc:219 /Hex:db.

Al pulsar la tecla "C" la figura pasara a ser verde.

Al pulsar la tecla "P" la figura se visualizara en la derecha.

Al pulsar la tecla "F" el programa terminara.

Bueno yo he hecho hasta aki pero no funciona bien, necesito que me lo completeis.


#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<conio.h>
#define VERDE 2
#define AZUL 4

void dibujar_cuadrado(void);
void posicionar_figura(void);

char color;
int ancho=15,alto=8;


int main (void)
{

char tecla;
tecla=getkey();
color=AZUL;
clrscr();
textattr(color);
for(;;)
{
dibujar_cuadrado();
if (tecla=='a')exit(0);
if (tecla=='c')
{
if (color==AZUL) color=VERDE;
else if (color==VERDE) color=AZUL;
}
textattr(color);
dibujar_cuadrado();
}
}


void dibujar_cuadrado(void)
{
int i,j;
int x=10,y=5;
gotoxy(x,y);
for(i=1;i<alto;i++)
{
gotoxy(x,y);
for(j=1;j<ancho;j++)
cprintf("\xdb");
y++;
}
}
void posicionar_figura(void)
{
}
Título: una ayudita ke keda poco
Publicado por: mikelharris en 30 de Mayo de 2005, 05:48:43 pm
Bueno he conseguido ke cambie de color y ke se termine el programa pero no consigo ke cambie de posicion, he hecho lo siguiente:

#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<conio.h>
#define VERDE 1
#define AZUL 2

void dibujar_cuadrado(void);
void posicionar_figura1(void);
void posicionar_figura2(void);

char color;
int ancho=15,alto=8;



int main (void)
{
int x=0;
char tecla;
tecla=getkey();
color=AZUL;
clrscr();
textattr(color);
dibujar_cuadrado();
for(;;)
{
if (tecla=='a')exit(0);
if(tecla=='p')
{
if (x==0)
{
posicionar_figura1;
textattr(color);
dibujar_cuadrado();
x++;
}
else if(x!=0)
{
posicionar_figura2;
textattr(color);
dibujar_cuadrado();
x--;
}
}
if (tecla=='c')
{
if (color==AZUL)
{
color=VERDE;
textattr(color);
dibujar_cuadrado();
}
else if (color==VERDE)
{
color=AZUL;
textattr(color);
dibujar_cuadrado();
}
}
tecla=getkey();
}

}


void dibujar_cuadrado(void)
{
int i,j;
int x=10,y=5;
gotoxy(x,y);
for(i=1;i<alto;i++)
{
gotoxy(x,y);
for(j=1;j<ancho;j++)
cprintf("\xdb");
y++;
}
}
void posicionar_figura1(void)
{
int x,y;
x=50;
y=5;
}

void posicionar_figura2(void)
{
int x,y;
x=5;
y=5;
}