Que tal amig@s nuevamente les traigo un código CPP para recordar viejos tiempos, se trata de un proyecto escolar el cual consistia en crear una imagen en el centro de la pantalla y que dicha imagen pudiera crecer y decrecer al pulsar determinadas teclas sin que la imagen se distorcione, asi como tambien poder moverse el las direcciones izquierda, derecha, arriba y abajo utilizando las teclas de direccionamiento.
Un proyecto donde aprendi que cuando se realiza un buen analisis para solucionar un problema, la programacion resulta más facil.
Resultado de ejecutar el codigo CPP. |
Aqui les dejo un segmento del archivo de codigo fuente, el archovo fuente completo lo podran descargar aqui triangulos.cpp.
#include "conio.h" #include "stdio.h" #include "graphics.h" #include "math.h" #include "dos.h" #include "stdlib.h" void graficos(void); void menu(void); void rombos(int x,int y,int inc); void ayuda(void); void tecla(char *asci,char *exa); void main(void){ char asci,exa,hay; int x,y,inc; graficos(); menu(); x=getmaxx()/2-50; y=getmaxy()/2+50; inc=0; rombos(x,y,0); tecla(&asci,&exa); while(exa!=68){ switch (exa){ //escalaminento decreciente F3 case 61:if(inc>-14){ setfillstyle(1,3); bar(getmaxx()-96,310,getmaxx()-6,350);//F3 outtextxy(getmaxx()-94,320," F3 ESCALA"); outtextxy(getmaxx()-94,330,"DECRECIENTE"); delay(250); cleardevice(); menu(); inc=inc-14; rombos(x,y,inc); } break;//F3 //escalamiento creciente F2 case 60:setfillstyle(1,3); bar(getmaxx()-96,265,getmaxx()-6,305);//F2 outtextxy(getmaxx()-93,275," F2 ESCALA"); outtextxy(getmaxx()-93,285," CRECIENTE"); delay(250); cleardevice(); menu(); inc=inc+14; rombos(x,y,inc); break;//F2 //mover a la izquierda <- data-blogger-escaped--="" data-blogger-escaped-75:setfillstyle="" data-blogger-escaped-a="" data-blogger-escaped-bar="" data-blogger-escaped-break="" data-blogger-escaped-case="" data-blogger-escaped-cleardevice="" data-blogger-escaped-delay="" data-blogger-escaped-derecha="" data-blogger-escaped-getmaxx="" data-blogger-escaped-inc="" data-blogger-escaped-la="" data-blogger-escaped-menu="" data-blogger-escaped-mover="" data-blogger-escaped-outtextxy="" data-blogger-escaped-rombos="" data-blogger-escaped-x="" data-blogger-escaped-y=""> case 77:setfillstyle(1,3); bar(getmaxx()-96,40,getmaxx()-6,80);//-> outtextxy(getmaxx()-90,50,"MOVER A LA"); outtextxy(getmaxx()-90,60," DERECHA"); delay(250); cleardevice(); menu(); x=x+14; rombos(x,y,inc); break; //mover hacia arriba ^ case 72:setfillstyle(1,3); bar(getmaxx()-96,130,getmaxx()-6,170);//up outtextxy(getmaxx()-94,140,"MOVER HACIA"); outtextxy(getmaxx()-94,150," ARRIBA"); delay(250); cleardevice(); menu(); y=y-14; rombos(x,y,inc); break; //mover hacia abajo v case 80:setfillstyle(1,3); bar(getmaxx()-96,175,getmaxx()-6,215);//down outtextxy(getmaxx()-94,185,"MOVER HACIA"); outtextxy(getmaxx()-94,195," ABAJO"); delay(250); cleardevice(); menu(); y=y+14; rombos(x,y,inc); break; case 59:setfillstyle(1,3); bar(getmaxx()-96,220,getmaxx()-6,260);//F1 outtextxy(getmaxx()-90,240," AYUDA F1"); delay(350); cleardevice(); ayuda(); break;//F1 }/ tecla(&asci,&exa); } } void rombos(int x, int y,int inc){ setcolor(4); line(x,y,x-10-inc/2,y-20-inc); line(x-10-inc/2,y-20-inc,x,y-40-inc*2); line(x,y-40-inc*2,x+10+inc/2,y-20-inc); line(x+10+inc/2,y-20-inc,x,y); line(x,y,x-20-inc,y); line(x-20-inc,y,x-30-inc-inc/2,y+20+inc); line(x-30-inc-inc/2,y+20+inc,x-10-inc+inc/2,y+20+inc); line(x-10-inc+inc/2,y+20+inc,x,y); line(x,y,x+20+inc,y); line(x+20+inc,y,x+30+inc+inc/2,y+20+inc); line(x+30+inc+inc/2,y+20+inc,x+10+inc-inc/2,y+20+inc); line(x+10+inc-inc/2,y+20+inc,x,y); setfillstyle(1,4); floodfill(x,y-4,4);//arriba floodfill(x-4,y+4,4);//izq floodfill(x+4,y+4,4);//der setfillstyle(1,15); setcolor(15); }
...
Segmento del archivo de codigo fuente .CPP
No hay comentarios:
Publicar un comentario
Deja tu Comentario