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