<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">No tiene mala pinta. Lo único es que es un juego que de momento sólo funciona en Windows. Por lo tanto no lo puedo probar. Intentaré portarlo para Linux y MAC cuando tengo tiempo, que no sé cuando será.<br><div><div>El 11/08/2009, a las 23:02, David fire escribió:</div><br class="Apple-interchange-newline"><blockquote type="cite">si antes te marque que le estabas tratando de asignar un float a un int.<br>David<br><br><div class="gmail_quote">2009/8/11 Carlos Arriagada <span dir="ltr"><<a href="mailto:carlos_arriagada@ipciisa.cl">carlos_arriagada@ipciisa.cl</a>></span><br> <blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div>Es simple% mi primer aporte.<a href="http://www.mediafire.com/?9f3zp2t3nal" rel="nofollow" target="_blank"><span></span></a><br> <br>Si tienen observaciones, no duden en hacerlas...<br><br>David Fire, si quieres lo puedes probar... ;)<div><div></div><div class="h5"><br><br><br><br>----- Original Message -----<br>From: "David fire" <<a href="mailto:ddfire@gmail.com" target="_blank">ddfire@gmail.com</a>><br> To: "Lista de correo sobre C y C++" <<a href="mailto:cconclase@listas.conclase.net" target="_blank">cconclase@listas.conclase.net</a>><br>Sent: martes 11 de agosto de 2009 21H56 (GMT+0100) Europe/Berlin<br> Subject: Re: [C con Clase] Jueguito Grafico<br><br>la pregunta es que falla?<br>si nos gusta?<br>any way no podes tratar de meterle un float a un int<br><br><code>#include<dos.h><br> int NDO[7] = {32.70, 65.41, 130.81, 261.63, 523.25, 1046.50, 2093.00};<br> int NDOS[7]= {34.65, 69.30, 138.59, 277.18, 554.37, 1108.73, 2217.46};<br> int NRE[7] = {36.71, 73.42, 146.83, 293.66, 587.33, 1174.66, 2349.32};<br> int NRES[7]= {38.89, 77.78, 155.56, 311.13, 622.25, 1244.51, 2489.02};<br> int NMI[7] = {41.20, 82.41, 164.81, 329.63, 659.26, 1318.51, 2637.02};<br> int NFA[7] = {43.65, 87.31, 174.61, 349.23, 698.46, 1396.91, 2793.83};<br> int NFAS[7]= {46.25, 92.50, 185.00, 369.99, 739.99, 1479.98, 2959.96};<br> int NSOL[7]= {49.00, 98.00, 196.00, 392.00, 783.99, 1567.98, 3135.96};<br> int NSOLS[7]={51.91, 103.83, 207.65, 415.30, 830.61, 1661.22,3322.44};<br> int NLA[7] = {55.00, 110.00, 220.00, 440.00, 880.00, 1760.00,3520.00};<br> int NLAS[7]= {58.27, 116.54, 233.08, 466.16, 932.33, 1864.66,3729.31};<br> int NSI[7] = {61.74, 123.47, 246.94, 493.88, 987.77, 1975.53,3951.07};</code><br><br><div class="gmail_quote"> 2009/8/11 Carlos Arriagada <span dir="ltr"><<a href="mailto:carlos_arriagada@ipciisa.cl" target="_blank">carlos_arriagada@ipciisa.cl</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> <div>##############################################<br><br><b><u>LOTO</u></b><br> <br> <code><br> /*LIBRERIA DONDE SE ENCUENTRA LOS BOTONES Y LAS VETANAS */<br> #include "GRAFICOS.H"<br> #include "musica.h"<br> #include<stdlib.h><br> <br> int c1,c2,c3,D[16],m,n;<br><span> //-------------------FUNCI</span><span></span><span>ON PARA GRAFICAR DISCOS--------------------</span><span></span>---<br> void Disco(int i,int Der,int Izq,int Arr,int Aba)<br> {<br>  setcolor(YELLOW);<br>    setfillstyle( SOLID_FILL,i);<br><span>    fillellipse(Der,Izq+4,Arr,</span><span></span>Aba);<br><span>    fillellipse(Der,Izq,Arr,Ab</span><span></span>a);<br>    setcolor(YELLOW);<br> }<br> //-----------------FIN DE LA FUNCION PARA GRAFICAR DISCOS---------------<br><span> //---------------------FUN</span><span></span><span>CION PARA LA PRESENTACION--------------</span><span></span>-------<br> void Presentacion()<br> {<br>   for(int i=1;i<=6;i++)<br><span>   Disco(i,290,300-(i*6),200-</span><span></span>(i*6),55-(i*4));<br><span>   settextstyle(TRIPLEX_FONT,</span><span></span> HORIZ_DIR,4);<br>   outtextxy(172,160,"Juego del LOTO";-) ;<br>   setcolor(WHITE);<br><span>   settextstyle(SANS_SERIF_FO</span><span></span>NT, HORIZ_DIR,1);<br>   outtextxy(0,0,"Instituto Profesional La Araraucana";-) ;<br><span>   settextstyle(DEFAULT_FONT,</span><span></span>HORIZ_DIR,1);<br>   setcolor(9);<br><span>   outtextxy(10,453,"Cargando</span><span></span>...";-) ;<br>   setcolor(0);<br>   for (int son=5;son<70;son++)<br>   tocarnota(NDO,son,1);<br>   for(int dow=100;dow<=500;dow++)<br>      {<br><span>       setfillstyle(INTERLEAVE_FI</span><span></span>LL,BLUE);<br>       bar(dow+50,450,dow+1,460);<br>       delay(15);<br>      }<br> }<br> <br> <br><span> //------------------------</span><span></span><span>---PAGINA I-------------------------</span><span></span>----<br> void main()<br><span> {int Salir=1,N=1,dec,sig,dig=1,</span><span></span><span>k=1,h=3,a=2,Desp,origen,de</span><span></span>stino,auxiliar;char *Num,*Or;<br> Iniciar();<br> graton.Rmuestra(FALSO);<br> Presentacion();<br> Marco();<br><span> Titulo(0,0,getmaxx()-5,"In</span><span></span>greso de Numeros";-) ;<br> Etiqueta(30,60,"Presione los 6 numeros que desee:";-) ;<br> rectangle(15,80,600,300);<br><span> Botones(150,50,25,25,1,"1"</span><span></span>;-) ;<br><span> Botones(200,50,25,25,1,"2"</span><span></span>;-) ;<br><span> Botones(150,90,25,25,1,"3"</span><span></span>;-) ;<br><span> Botones(200,90,25,25,1,"4"</span><span></span>;-) ;<br><span> Botones(150,130,25,25,1,"5</span><span></span>";-) ;<br><span> Botones(200,130,25,25,1,"6</span><span></span>";-) ;<br><span> Botones(500,380,80,25,1,"S</span><span></span>orteo";-) ;<br><span> Botones(500,425,80,25,1,"S</span><span></span>alir";-) ;<br> <br> <br> graton.Rmuestra(VERDAD);<br> Restado Posicion;<br> if(Result->presente)<br>   {<br>    do{<br><span>       Posicion=graton.Rpulsado(B</span><span></span>otonI);<br><span>       if(Posicion.contador_boton</span><span></span>)<br>  {<br><span>   if(TPos(Posicion.ejex,500,</span><span></span>580))<br>     {<br><span>      if(TPos(Posicion.ejey,425,</span><span></span>450))<br>        {<br>  graton.Rmuestra(FALSO);<br><span>  Botones(500,425,80,25,2,"S</span><span></span>alir";-) ;<br>  delay(200);<br><span>  Botones(500,425,80,25,1,"S</span><span></span>alir";-) ;<br>  graton.Rmuestra(VERDAD);<br>  Salir=0;<br>        }<br>      }<br><span>    if(TPos(Posicion.ejex,400,</span><span></span>480))<br>     {<br><span>      if(TPos(Posicion.ejey,50,7</span><span></span>5))<br>        {<br>  graton.Rmuestra(FALSO);<br><span>  Botones(400,50,80,25,2,"Ac</span><span></span>eptar";-) ;<br>  delay(200);<br><span>  Botones(400,50,80,25,1,"Ac</span><span></span>eptar";-) ;<br><span>  setfillstyle(SOLID_FILL,BL</span><span></span>ACK);<br>  bar(15,420,480,475);<br><span>  setfillstyle(HATCH_FILL,7)</span><span></span>;<br>  bar(17,205,202,410);<br><span>  setfillstyle(HATCH_FILL,7)</span><span></span>;<br>  bar(222,205,408,410);<br><span>  setfillstyle(HATCH_FILL,7)</span><span></span>;<br>  bar(428,205,611,410);<br>  m=0;n=0;<br><span>   if(k==1){Desp=0;c1=N;c2=0;</span><span></span>c3=0;}<br><span>   if(k==2){Desp=205;c1=0;c2=</span><span></span>N;c3=0;}<br><span>   if(k==3){Desp=410;c1=0;c2=</span><span></span>0;c3=N;}<br>  for(int i=1;i<=N;i++)<br>     {<br>      setfillstyle(LINE_FILL,i);<br><span>      bar(20+(5*i)+Desp,400-(10*</span><span></span><span>i),200-(5*i)+Desp,390-(10*</span><span></span>i));<br>      D[i]=(N+1)-i;<br>     }<br><span>   if((k==1||k==2)&&(h==1||h=</span><span></span>=2))a=3;<br><span>   if((k==1||k==3)&&(h==1||h=</span><span></span>=3))a=2;<br><span>   if((k==2||k==3)&&(h==2||h=</span><span></span>=3))a=1;<br> <br> <br>   graton.Rmuestra(VERDAD);<br>        }<br>     }<br><span>    if(TPos(Posicion.ejey,50,7</span><span></span>5))<br>      {<br><span>       if(TPos(Posicion.ejex,150,</span><span></span>175))<br>  {<br>   graton.Rmuestra(FALSO);<br><span>   Botones(150,50,25,25,2,"<-</span><span></span>";-) ;<br>   delay(200);<br><span>   Botones(150,50,25,25,1,"<-</span><span></span>";-) ;<br>   graton.Rmuestra(VERDAD);<br><span>   if(N>1)N--;if(N>=10)dig=2;</span><span></span>else dig=1;<br>   Num = ecvt(N,dig,&dec,&sig);<br><span>   setfillstyle(SOLID_FILL,7)</span><span></span>;<br>   bar(178,55,195,70);<br>   Etiqueta(187,65,Num);<br>  }<br><span>       if(TPos(Posicion.ejex,200,</span><span></span>225))<br>  {<br>   graton.Rmuestra(FALSO);<br><span>   Botones(200,50,25,25,2,"-></span><span></span>";-) ;<br>   delay(200);<br><span>   Botones(200,50,25,25,1,"-></span><span></span>";-) ;<br>   graton.Rmuestra(VERDAD);<br><span>   if(N<15)N++;if(N>=10)dig=2</span><span></span>;<br>   Num = ecvt(N,dig,&dec,&sig);<br><span>   setfillstyle(SOLID_FILL,7)</span><span></span>;<br>   bar(178,55,195,70);<br>   Etiqueta(187,65,Num);<br>  }<br>      }<br><span>    if(TPos(Posicion.ejey,90,1</span><span></span>15))<br>      {<br><span>       if(TPos(Posicion.ejex,150,</span><span></span>175))<br>  {<br>    graton.Rmuestra(FALSO);<br><span>    Botones(150,90,25,25,2,"<-</span><span></span>";-) ;<br>    delay(200);<br><span>    Botones(150,90,25,25,1,"<-</span><span></span>";-) ;<br>    graton.Rmuestra(VERDAD);<br>   if(k>1&&k-1!=h)k--;<br>     else<br>     {<br>      if(k==3)k-=2;<br>     }<br>   Num = ecvt(k,1,&dec,&sig);<br><span>   setfillstyle(SOLID_FILL,7)</span><span></span>;<br>   bar(178,95,195,110);<br>   Etiqueta(186,103,Num);<br>  }<br><span>       if(TPos(Posicion.ejex,200,</span><span></span>225))<br>  {<br>   graton.Rmuestra(FALSO);<br><span>   Botones(200,90,25,25,2,"-></span><span></span>";-) ;<br>   delay(200);<br><span>   Botones(200,90,25,25,1,"-></span><span></span>";-) ;<br>   graton.Rmuestra(VERDAD);<br>   if(k<3&&k+1!=h)k++;<br>    else<br>     {<br>      if(k==1)k+=2;<br>     }<br>   Num = ecvt(k,1,&dec,&sig);<br><span>   setfillstyle(SOLID_FILL,7)</span><span></span>;<br>   bar(178,95,195,110);<br>   Etiqueta(186,103,Num);<br>  }<br>      }<br><span>    if(TPos(Posicion.ejey,130,</span><span></span>155))<br>      {<br><span>       if(TPos(Posicion.ejex,150,</span><span></span>175))<br>  {<br>   graton.Rmuestra(FALSO);<br><span>   Botones(150,130,25,25,2,"<</span><span></span>-";-) ;<br>   delay(200);<br><span>   Botones(150,130,25,25,1,"<</span><span></span>-";-) ;<br>   graton.Rmuestra(VERDAD);<br>   if(h>1&&h-1!=k)h--;<br>     else<br>     {<br>      if(h==3)h-=2;<br>     }<br>   Num = ecvt(h,1,&dec,&sig);<br><span>   setfillstyle(SOLID_FILL,7)</span><span></span>;<br>   bar(178,135,195,150);<br>   Etiqueta(188,145,Num);<br>  }<br><span>       if(TPos(Posicion.ejex,200,</span><span></span>225))<br>  {<br>   graton.Rmuestra(FALSO);<br><span>   Botones(200,130,25,25,2,"-</span><span></span>>";-) ;<br>   delay(200);<br><span>   Botones(200,130,25,25,1,"-</span><span></span>>";-) ;<br>   graton.Rmuestra(VERDAD);<br>   if(h<3&&h+1!=k)h++;<br>   else<br>     {<br>      if(h==1)h+=2;<br>     }<br>   Num = ecvt(h,1,&dec,&sig);<br><span>   setfillstyle(SOLID_FILL,7)</span><span></span>;<br>   bar(178,135,195,155);<br>   Etiqueta(188,145,Num);<br>  }<br>      }<br>  }<br>      }while(Salir==1);<br> textcolor(BLACK);<br> clrscr();<br> gotoxy(17,15);<br> printf("Realizado por Carlos Arriagada Devia.";-) ;<br> gotoxy(17,16);<br> printf("04-100B.";-) ;<br> gotoxy(17,18);<br> printf("Presione cualquier tecla para salir...";-) ;<br> getch();<br> }<br> Finalizar();<br> }<br><span> //-------------------FIN DE LA FUNCION PRINCIPAL-----------------</span><span></span>---------<br> </code><br> <br> <b><u>LIBRERIAS</u></b><br> <br> <code><br> Musica:<br> /*<br> Para reproducir una nota musical se usa:<br>  tocarnota(nota, octav, duracion);<br> por ejemplo:<br>  tocarnota(NSI, 5, 20);<br> Los nombres de las notas son:<br> NDO<br> NDOS<br> NRE<br> NRES<br> NMI<br> NFA<br> NFAS<br> NSOL<br> NSOLS<br> NLA<br> NLAS<br> NSI<br> Las octavas son 1, 2, 3, 4, 5, 6 y 7<br> Las duraciones son:<br> 10 para nota negra<br> 20 para nota blanca<br> ...<br> Para agregar un silencia se usa:<br>  silencio(duracion);<br> Por ejemplo:<br>  silencio(5);<br>                                               *<br> El tempo definido es 120, pero se puede cambiar<br> */<br> #include<dos.h><br> int NDO[7] = {32.70, 65.41, 130.81, 261.63, 523.25, 1046.50, 2093.00};<br> int NDOS[7]= {34.65, 69.30, 138.59, 277.18, 554.37, 1108.73, 2217.46};<br> int NRE[7] = {36.71, 73.42, 146.83, 293.66, 587.33, 1174.66, 2349.32};<br> int NRES[7]= {38.89, 77.78, 155.56, 311.13, 622.25, 1244.51, 2489.02};<br> int NMI[7] = {41.20, 82.41, 164.81, 329.63, 659.26, 1318.51, 2637.02};<br> int NFA[7] = {43.65, 87.31, 174.61, 349.23, 698.46, 1396.91, 2793.83};<br> int NFAS[7]= {46.25, 92.50, 185.00, 369.99, 739.99, 1479.98, 2959.96};<br> int NSOL[7]= {49.00, 98.00, 196.00, 392.00, 783.99, 1567.98, 3135.96};<br> int NSOLS[7]={51.91, 103.83, 207.65, 415.30, 830.61, 1661.22,3322.44};<br> int NLA[7] = {55.00, 110.00, 220.00, 440.00, 880.00, 1760.00,3520.00};<br> int NLAS[7]= {58.27, 116.54, 233.08, 466.16, 932.33, 1864.66,3729.31};<br> int NSI[7] = {61.74, 123.47, 246.94, 493.88, 987.77, 1975.53,3951.07};<br> int play_nota(int nota[], int oct, int duracion);<br> int silencio(int duracion);<br> int octava;<br> int o;<br> int duracion;<br> int tempo = 120;<br> int tn;<br> int frec;<br> int tocarnota(int nota[], int octava, int duracion)<br> {<br> int t = 6000/tempo;<br> o = octava -1;<br> tn =duracion * t;<br> frec = nota[o];<br> sound(frec);<br> delay(tn);<br> nosound();<br> return 1;<br> }<br> int silencio(int duracion)<br> {<br> tn =duracion * 6000/tempo;<br> delay(tn);<br> return 1;<br> }<br> Graficos:<br> #ifndef __GRAFICOS_cpp<br> #define __GRAFICOS_cpp<br> #include<graphics.h><br> #include <stdlib.h><br> #include <stdio.h><br> #include <conio.h><br> #include<string.h><br> #include<stdarg.h><br> #include<fstream.h><br> #include"raton.h"<br> #define ENTER 13<br> #define BACKSPACE '\b'<br> #define ESC 27<br> #define SUPR 83<br> #define IZQUIERDA 75<br> #define DERECHA   77<br> Rresultado *Result;<br> void Ventana(int x, int y, int x1, int y1, int modo3D = 0);<br> void Muestra_Texto(int a,int b,char *texto);<br><span> //------------------------</span><span></span><span>--------------------------</span><span></span>-----------<br> void Iniciar()<br> {<br>   int gdriver = DETECT, gmode, errorcode;<br>   initgraph(&gdriver, &gmode, "I:\\TC\\BGI";-) ;<br>   errorcode = graphresult();<br>   if (errorcode != grOk)<br>      {<br>      printf("Error Grafico: %s\n", grapherrormsg(errorcode));<br>      printf("Presione una tecla para continuar:";-) ;<br>      getch();<br>      exit(1);<br>      }<br> Result=graton.Riniciar();<br> graton.Pon_Cursor(FLECHA);<br> }<br> void Finalizar()<br> {<br> closegraph();<br> }<br> int TPos(int TP,int Abajo,int Arriba)<br> {<br> return ( (TP>=Abajo) && (TP<=Arriba) );<br> }<br> //Dibuja una ventana vacia tipo WINDOWS98<br> void Ventana(int x, int y, int x1, int y1, int modo3D)<br> {<br> //  modo3D=0 -> muestra una ventana sin efecto 3D<br> //  modo3D=1 -> muestra una ventana saliente<br> //  modo3D=2 -> muestra una ventana entrante<br> int marco1,marco2;<br> switch( modo3D )<br> {<br> case 0:<br>  marco1=marco2=7;<br>  break;<br> case 1:<br>  marco1=15;<br>  marco2=8;<br>  break;<br> case 2:<br>  marco1=8;<br>  marco2=15;<br> }<br> setfillstyle(1,7);<br> bar(x,y,x1,y1);<br> setcolor(marco1);<br> line(x,y,x1,y);<br> line(x,y,x,y1);<br> setcolor(marco2);<br> line(x,y1,x1,y1);<br> line(x1,y,x1,y1);<br> }<br> void Marco()<br> {<br><span> Ventana(0,0,getmaxx()-10,g</span><span></span>etmaxy(),0);<br> }<br> void Titulo(int izq,int arriba,int der,char *text)<br> {<br><span> //settextjustify(CENTER_TE</span><span></span>XT,CENTER_TEXT);<br> setfillstyle(1,1);<br><span> bar(izq+2,arriba+2,der-2,a</span><span></span>rriba+20);<br> setcolor(15);<br><span> outtextxy((der-izq)/2-50,a</span><span></span>rriba+7,text);<br> }<br> void Botones(int x,int y,int w,int h,int modo,char *text)<br> {<br><span> settextjustify(CENTER_TEXT</span><span></span>,CENTER_TEXT);<br> Ventana(x,y,x+w,y+h,modo);<br> setcolor(15);<br><span> outtextxy(x+(w/2),y+(h/2),</span><span></span>text);<br> }<br> void Etiqueta(int x,int y,char *text)<br> {<br> setcolor(15);<br> outtextxy(x,y,text);<br> }<br> #endif<br> </code><br><br>##############################################<br></div><br>_______________________________________________<br> Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net" target="_blank">Cconclase@listas.conclase.net</a><br> <a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br> Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br><br clear="all"><br>-- <br> (\__/) <br>(='.'=)This is Bunny. Copy and paste bunny into your <br> (")_(")signature to help him gain world domination. <br><br> </div></div></div><br>_______________________________________________<br> Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br> <a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br> Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br><br clear="all"><br>-- <br> (\__/) <br>(='.'=)This is Bunny. Copy and paste bunny into your <br> (")_(")signature to help him gain world domination. <br><br> _______________________________________________<br>Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br><a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ</blockquote></div><br><div> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Best regards</div><div>Jorge</div><div><br></div></div></span><br class="Apple-interchange-newline"> </div><br></body></html>