Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - JORGE BAAK

#1
Cita de: Akai en 17 Marzo 2011, 12:01 PM
Dios...

Leyendo el código me va a dar algo. Se que empezando se tienen malas costumbres, pero joder, esto me supera.

Has oído hablar de la siguiente estructura? (Se que no, lo leo en tu código)
if(algo){}
else if(otra cosa{}
else if(una tercera cosa){}
else{}


y así nos evitamos un código infernal e ilegible, e imposible de buscar un error:

if(algo){}
else{
if(otra cosa){}
else{if (una tercera cosa)}


Deberes para casa: antes de preguntar tu próxima duda por aquí, organiza tu código. Porque básicamente eso es lo que te está causando problemas.

El fallo está en esa estructura, en que falta cerrar alguna llave, pero ya digo, es imposible encontrarlo sin entender el código (al menos para mi)
Cita de: gankutsuo en 17 Marzo 2011, 18:16 PM
fijate como debe ser una buena identación, porque vi la tuyta y decidí mejor no leer el código para no enredarme...



Fijate como está organizado cada nivel, donde empieza y donde termina cada llave, porque es de esta forma, seguro que si aprendes bien esto y lo aplicas hasta para ti será más entendible tu propio código.

Ah! y no te olvides tampoco de comentar, luego ni sabes que hace cada cosay porque la metiste
Y por último para que te brindemos una buena ayuda porfavor, cuando pongas código y lo pongas entre las etiquetas GeShi, no te olvides elegir que lenguaje estás usando para que se resalte con los colorsitos y sea más fácil para todos leer:


Saludos


Muchas gracias amigos por hacerme esas observaciones., pues estuve checando el codigo y encontre una llave de mas a la mitad y unas que faltaban al final. Gracias y he aprendido mas sobre como postear aqui, y la estructura de las llaves.. saludos

;-) ;-) ;-) ;-)
#2
Cita de: mauriciodelos en 17 Marzo 2011, 06:46 AM
¿probaste poniendole un } antes de el else de la línea que te marca? Cerciorate que tengas la misma cantidad de llaves abiertas que cerradas, a lo mejor te pasaste alguna, tiene que haber 18.

¿Te da algún otro error aparte de ese?



todo bien amigo es lo que no entiendo.. no se porque marca ese unico error solo ese marca de la linea 69
#3
Cita de: mauriciodelos en 17 Marzo 2011, 06:17 AM
Volví a revisar el código y encontré otras cosas:

fijate que el error que te da (la mayoría de los compiladores lo hacen) dice en que línea fue. seguro que te marca la línea 64 que es donde te dice que falta un } antes del else (el else está en la línea 64). ese else que te falta es el cierre de:


if((e==1)&& (e<4 && e>0))
        { //abrir ife1 metal


y además encontré esto también en la línea 70:

if((e==2)&&(e>0 && e<4)

Ahí te falta el ) de cierre.

Probá con estas cosas y contanos.

PD: Deberías tratar de no usar las librerías conio y conio 2 debido a que no son parte de las librerías estandar de c, en el foro hay bastante información acerca de eso.

Los errores que me marca son la linea 69 del

if((e==1)&& (e<4 && e>0))
        { //abrir ife1 metal 
              system("cls");
              printf("\n                               Metal/Rock");
              Sleep(1000);
              printf("\n\n\n 1._Smoke on the wather - Deep Purple \n\n\n 2._ Whiskey in the jar-Metallica \n\n\n 3._The end of heartache-Killswichtengage \n\n ");
              scanf("%d",&n);
              if(n==1)
               {//abrir if2 smoke
               
                     system("cls");
                     gotoxy(110,1);cprintf("                \6 Smoke on the Water-Deep Purple \6 ");
                     printf("\n\n Es una cancion del grupo de hard rock britanico Deep Purple, \n\n lanzada en el influyente album Machine Head, \n\n tiene una duracion de estudio de 5:40.\n\\n\Es también muy conocida su version en directo del album Made in Japan, de 1972.");
                     char soundfile[] = "C:/Users/Jorge/Desktop/Music/Smokeonthewather.wav";
                     PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                     getch();
                }//cerrar if2
                else
                {
                if(n==2)
                  {//wiskey 
                     system("cls");
                     printf("                                    \6 Wiskey in the jar-Metallica \6  n\n ");
                     printf(" Duracion: 5:30 min");
                     printf("Artista: Metallica-2002");
                     char soundfile[] = "C:/Users/Jorge/Desktop/Music/whiskey.wav";
                     PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                     getch();
                   }
                  else
                    {
                        if(n==3)
                            {//the end of heardttach
                              system("cls");
                              gotoxy(110,1);cprintf("                  \6 The end of heardtache-Killsich engage \6 ");
                              printf("soundtracks ");
                              char soundfile[] = "C:/Users/Jorge/Desktop/Music/kill.wav";
                              PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                              getch();   
                             }   
                    }   
           
            }//cerrar ife1 metal
            else


linea  69  expected `;' before "else"
linea 69 expected primary-expression before "else"



Repare los anteriores y no paso nada amigo saludos
#4
Cita de: mauriciodelos en 17 Marzo 2011, 02:02 AM
¿Podrías indicarnos que errores te da?

#include <mmsystem.h>
#include <cstdlib>
#include<stdio.h>
#include<conio2.h>
#include<conio.h>
#include<string.h>


using namespace std;
int e,n,n2,n3;
int main()
{

    textcolor(13); 
    printf("\n\n                    \2\2\2\2 Repertorio musical \2\2\2\2 \n\n ");
    Sleep(1000);
    printf("\n\n              Bienvenidos a la fase beta del repertorio musical");
    do
    {
       
        printf("\n\n                      Seleccione el genero de su gusto");
        Sleep(1000);
        printf("\n\n\n 1._Metal/Rock \n\n\n\n 2._Trance \n\n\n\n 3._Clasica/blues \n\n\n\n  4._ Salir   \n\n\n\n");
        scanf("%d",&e);
        if((e==1)&& (e<4 && e>0))
        { //abrir ife1 metal 
              system("cls");
              printf("\n                               Metal/Rock");
              Sleep(1000);
              printf("\n\n\n 1._Smoke on the wather - Deep Purple \n\n\n 2._ Whiskey in the jar-Metallica \n\n\n 3._The end of heartache-Killswichtengage \n\n ");
              scanf("%d",&n);
              if(n==1)
               {//abrir if2 smoke
               
                     system("cls");
                     gotoxy(110,1);cprintf("                \6 Smoke on the Water-Deep Purple \6 ");
                     printf("\n\n Es una cancion del grupo de hard rock britanico Deep Purple, \n\n lanzada en el influyente album Machine Head, \n\n tiene una duracion de estudio de 5:40.\n\\n\Es también muy conocida su version en directo del album Made in Japan, de 1972.");
                     char soundfile[] = "C:/Users/Jorge/Desktop/Music/Smokeonthewather.wav";
                     PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                     getch();
                }//cerrar if2
                else
                {
                if(n==2)
                  {//wiskey 
                     system("cls");
                     printf("                                    \6 Wiskey in the jar-Metallica \6  n\n ");
                     printf(" Duracion: 5:30 min");
                     printf("Artista: Metallica-2002");
                     char soundfile[] = "C:/Users/Jorge/Desktop/Music/whiskey.wav";
                     PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                     getch();
                   }
                  else
                    {
                        if(n==3)
                            {//the end of heardttach
                              system("cls");
                              gotoxy(110,1);cprintf("                  \6 The end of heardtache-Killsich engage \6 ");
                              printf("soundtracks ");
                              char soundfile[] = "C:/Users/Jorge/Desktop/Music/kill.wav";
                              PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                              getch();   
                             }   
                    }   
           
            }//cerrar ife1 metal
            else
               {
                    if((e==2)&&(e>0 && e<4)//abrir else de ife1 trance
    {
                   system("cls");
                   printf("\n\n Trace");
                   printf("\n\n 1._Hydro acuatic \n\n 2._Take over control");
                   scanf("%d",&n2);
                   if(n2==1) //abrir if de n2
                      {
                     
                        system("cls");
                        gotoxy(110,1);cprintf("                                        Hydro acuatic " );
                        printf("\n\n Set de trance producido por el DJ Dash Berlin en el año 2010 durante \n\n la gira en que tambien estubo en Mexico");
                        char soundfile[] = "C:/Users/Jorge/Desktop/Music/acuatic.wav";
                        PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                        getch();
                       }//cerrar if de n2
                       else
                       { //abrir else de if n2
                         if(n2==2)
                              {//abrir opcion 2 de n2
                                 system("cls");
                                 gotoxy(110,1);cprintf("                              Take Over Control");
                                 printf(" Set producido por +Nescafe en el año 2010 y se expuso \n\n en el IBIZA de 2010 ganando varios premios tras integrar trance-house");
                                 char soundfile[] = "C:/Users/Jorge/Desktop/Music/over.wav";
                                 PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                                 getch();   
                               }//cerrar else de if n2
            }         }                                             
                 }//cerrar else de ife1  trance
                 if((e==3) && (e<4 && e>0))
                        //abrir else de ife1 de clasica blues
                    {
                      system("cls");
                      printf("\n\n Clasica/Blues");
                      printf("\n\n 1._imagine \n\n2._cold\n\n");
                      scanf("%d",&n3);
                      if(n3==1)
                          {
                              system("cls");
                              gotoxy(110,1);cprintf("                                  Imagine-Arpa Celta");
                              printf(" Esta cancion es producida en el año 2010 por la orquesta de Arpa Celtika real. Mas informacion En su pagina oficial ");
                              char soundfile[] = "C:/Users/Jorge/Desktop/Music/imagine.wav";
                              PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                              getch();
                          }   
                         else
                           {
                              if(n3==2)
                                 {
                                     system("cls");
                                     gotoxy(110,1);cprintf("                            Cold-ATB Secion Instrumental ");
                                     printf(" Este es un Set que esta disponible en exclusive por $100 pesos por cancion, \n\n integramos este set de TRACE/CLASIC unica y exclusiva por el DJ ATB");
                                     char soundfile[] = "C:/Users/Jorge/Desktop/Music/cold.wav";
                                     PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                                     getch();
                                 }
                                                                           
                           }
                                                                   
                    }
                   else
                    {
                     printf("nada");
                } 
            }                                         
             


   
}
while(e<4 && e>0);


}






Este es mas corregido y mas ordenado.. Los errores son:

In function int main ();
expected primary-expression before "else"
expected `;' before "else"
#5
Cita de: mauriciodelos en 16 Marzo 2011, 19:24 PM
Es que al tener desordenado el código, se te puede escapar algo.

A vos lo que te falta es una llave al final, para que cierre el main.

Normalmente, para organizarte, después de la llave, en la siguiente línea, siempre se deja un espacio, puede ser de tabulador o lo que vos quieras. Ej:

int main ()
{
       int a=1; //Al comienzo de la linea siguiente al corchete abierto se deja el espacio
       if (a==1)//Las lineas siguientes empiezan donde comienza la anterior
       {
               a++;//Aca se vuelve a dejar el espacio
       } //El corchete de cierre empieza en la misma "columna" que el de apertura
       
       return 0; //Las siguientes lineas empiezan en la misma columna que la anterior
}






Sigue con el mismo error amigo no se que sea
#6
Cita de: Shell Root en 16 Marzo 2011, 04:02 AM
Dejame decirte que tú código esta hecho una *****. Deberías de usar SWITCH o quizás organizar MUCHO tú código.
Código (cpp) [Seleccionar]
#include <windows.h>
#include <mmsystem.h>
#include <cstdlib>
#include<stdio.h>
#include<conio2.h>
#include<conio.h>
#include<string.h>

using namespace std;
int e,n,n2,n3;
int main(){
textcolor(13); 
printf("\n\n                    \2\2\2\2 Repertorio musical \2\2\2\2 \n\n ");
Sleep(1000);
printf("\n\n              Bienvenidos a la fase beta del repertorio musical");
printf("\n\n                      Seleccione el genero de su gusto");
Sleep(1000);
printf("\n\n\n 1._Metal/Rock \n\n\n\n 2._Trance \n\n\n\n 3._Clasica/blues \n\n\n\n \n\n");
scanf("%d",&e);

if(e==1){ //abrir ife1 metal 
system("cls");
printf("\n                               Metal/Rock");
Sleep(1000);
printf("\n\n\n 1._Smoke on the wather - Deep Purple \n\n\n 2._ Whiskey in the jar-Metallica \n\n\n 3._The end of heartache-Killswichtengage \n\n ");
scanf("%d",&n);
if(n==1){//abrir if2 smoke
system("cls");
gotoxy(110,1);
cprintf("                \6 Smoke on the Water-Deep Purple \6 ");
printf("\n\n Es una cancion del grupo de hard rock britanico Deep Purple, \n\n lanzada en el influyente album Machine Head, \n\n tiene una duracion de estudio de 5:40.\n\\n\Es también muy conocida su version en directo del album Made in Japan, de 1972.");
char soundfile[] = "C:/Users/Jorge/Desktop/Music/Smokeonthewather.wav";
PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
getch();
}else{
if(n==2){//wiskey
system("cls");
printf("                                    \6 Wiskey in the jar-Metallica \6  n\n ");
printf(" Duracion: 5:30 min");
printf("Artista: Metallica-2002");
char soundfile[] = "C:/Users/Jorge/Desktop/Music/whiskey.wav";
PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
getch();
}else{
if(n==3){//the end of heardttach
system("cls");
gotoxy(110,1);
cprintf("                  \6 The end of heardtache-Killsich engage \6 ");
printf(" \n\n(Al final de la angustia) es un album musical del grupo\n\nde metalcore estadounidense Killswitch Engage.\n\n Salio a la venta en Estados Unidos el 11 de mayo de 2004.\n\n La cancion que le hace honor al album, es decir, de nombre homonimo a éste, \n\n fue usada en el soundtracks de la pelicula Resident Evil: Apocalipsis. \n\n \n\n  .");
char soundfile[] = "C:/Users/Jorge/Desktop/Music/kill.wav";
PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
getch();   
}   
}
}else{//abrir else de ife1 trance
system("cls");
printf("\n\n Trace");
printf("\n\n 1._Hydro acuatic \n\n 2._Take over control");
scanf("%d",&n2);
if(n2==1){
system("cls");
gotoxy(110,1);
cprintf("                                        Hydro acuatic " );
printf("\n\n Set de trance producido por el DJ Dash Berlin en el año 2010 durante \n\n la gira en que tambien estubo en Mexico");
char soundfile[] = "C:/Users/Jorge/Desktop/Music/acuatic.wav";
PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
getch();
}else{
if(n2==2){
system("cls");
gotoxy(110,1);
cprintf("                              Take Over Control");
printf(" Set producido por +Nescafe en el año 2010 y se expuso \n\n en el IBIZA de 2010 ganando varios premios tras integrar trance-house");
char soundfile[] = "C:/Users/Jorge/Desktop/Music/over.wav";
PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
getch(); 
}//cerrar else de if n2
}                                             
}//cerrar else de ife1  trance
if(e==3){
system("cls");
printf("\n\n Clasica/Blues");
printf("\n\n 1._imagine \n\n2._cold\n\n");
scanf("%d",&n3);
if(n3==1){
system("cls");
gotoxy(110,1);
cprintf("                                  Imagine-Arpa Celta");
printf(" Esta cancion es producida en el año 2010 por la orquesta de Arpa Celtika real. Mas informacion En su pagina oficial ");
char soundfile[] = "C:/Users/Jorge/Desktop/Music/imagine.wav";
PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
getch();
}else{
if(n3==2){
system("cls");
gotoxy(110,1);
cprintf("                            Cold-ATB Secion Instrumental ");
printf(" Este es un Set que esta disponible en exclusive por $100 pesos por cancion, \n\n integramos este set de TRACE/CLASIC unica y exclusiva por el DJ ATB");
char soundfile[] = "C:/Users/Jorge/Desktop/Music/cold.wav";
PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
getch();
}
}
}else{
printf("nada");
}                                             
   /* CREO QUE LE FALTAN ALGUNOS CIERRES DE CORCHETES */
}




Lo que pasa amigo esque estoy en programacion basica y aun no toco esos temas...  :(
#7
Hola amigos pues tengo un programa que hace una emulacion de rocola pero no encuetro unos errores en los if. por mas que le busco y muevo no le busco no me doy cuenta. Si me pueden ayudar?
Les dejo el codigo;
#include <windows.h>
#include <mmsystem.h>
#include <cstdlib>
#include<stdio.h>
#include<conio2.h>
#include<conio.h>
#include<string.h>


using namespace std;
int e,n,n2,n3;
int main()
{

textcolor(13); 
printf("\n\n                    \2\2\2\2 Repertorio musical \2\2\2\2 \n\n ");
Sleep(1000);
printf("\n\n              Bienvenidos a la fase beta del repertorio musical");
printf("\n\n                      Seleccione el genero de su gusto");
Sleep(1000);
printf("\n\n\n 1._Metal/Rock \n\n\n\n 2._Trance \n\n\n\n 3._Clasica/blues \n\n\n\n \n\n");
scanf("%d",&e);

if(e==1)
   { //abrir ife1 metal 
     system("cls");
     printf("\n                               Metal/Rock");
     Sleep(1000);
     printf("\n\n\n 1._Smoke on the wather - Deep Purple \n\n\n 2._ Whiskey in the jar-Metallica \n\n\n 3._The end of heartache-Killswichtengage \n\n ");
     scanf("%d",&n);
     if(n==1)
        {//abrir if2 smoke
           system("cls");
           gotoxy(110,1);cprintf("                \6 Smoke on the Water-Deep Purple \6 ");
           printf("\n\n Es una cancion del grupo de hard rock britanico Deep Purple, \n\n lanzada en el influyente album Machine Head, \n\n tiene una duracion de estudio de 5:40.\n\\n\Es también muy conocida su version en directo del album Made in Japan, de 1972.");
           char soundfile[] = "C:/Users/Jorge/Desktop/Music/Smokeonthewather.wav";
           PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
           getch();
         }//cerrar if2
         else
            {
              if(n==2)
                  {//wiskey
                   system("cls");
                   printf("                                    \6 Wiskey in the jar-Metallica \6  n\n ");
                   printf(" Duracion: 5:30 min");
                   printf("Artista: Metallica-2002");
                   
                   char soundfile[] = "C:/Users/Jorge/Desktop/Music/whiskey.wav";
                   PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                   getch();
                 
                   }
                else
                  {
                      if(n==3)
                        {//the end of heardttach
                          system("cls");
                          gotoxy(110,1);cprintf("                  \6 The end of heardtache-Killsich engage \6 ");
                          printf(" \n\n(Al final de la angustia) es un album musical del grupo\n\nde metalcore estadounidense Killswitch Engage.\n\n Salio a la venta en Estados Unidos el 11 de mayo de 2004.\n\n La cancion que le hace honor al album, es decir, de nombre homonimo a éste, \n\n fue usada en el soundtracks de la pelicula Resident Evil: Apocalipsis. \n\n \n\n  .");
                          char soundfile[] = "C:/Users/Jorge/Desktop/Music/kill.wav";
                          PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                          getch();   
                          }   
                    }   
           
  }//cerrar ife1 metal
  else
    {//abrir else de ife1 trance
       system("cls");
       printf("\n\n Trace");
       printf("\n\n 1._Hydro acuatic \n\n 2._Take over control");
       scanf("%d",&n2);
       if(n2==1) //abrir if de n2
            {
              system("cls");
              gotoxy(110,1);cprintf("                                        Hydro acuatic " );
              printf("\n\n Set de trance producido por el DJ Dash Berlin en el año 2010 durante \n\n la gira en que tambien estubo en Mexico");
              char soundfile[] = "C:/Users/Jorge/Desktop/Music/acuatic.wav";
              PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
              getch();
            }//cerrar if de n2
            else
              { //abrir else de if n2
                if(n2==2)
                   {//abrir opcion 2 de n2
                      system("cls");
                     
                     gotoxy(110,1);cprintf("                              Take Over Control");
                     printf(" Set producido por +Nescafe en el año 2010 y se expuso \n\n en el IBIZA de 2010 ganando varios premios tras integrar trance-house");
                      char soundfile[] = "C:/Users/Jorge/Desktop/Music/over.wav";
                      PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                      getch(); 
                    }//cerrar else de if n2
                }                                             
        }//cerrar else de ife1  trance
        if(e==3)
             //abrir else de ife1 de clasica blues
              {
                system("cls");
                printf("\n\n Clasica/Blues");
                printf("\n\n 1._imagine \n\n2._cold\n\n");
                scanf("%d",&n3);
                if(n3==1)
                  {
                   system("cls");
                   gotoxy(110,1);cprintf("                                  Imagine-Arpa Celta");
                   printf(" Esta cancion es producida en el año 2010 por la orquesta de Arpa Celtika real. Mas informacion En su pagina oficial ");
                   char soundfile[] = "C:/Users/Jorge/Desktop/Music/imagine.wav";
                   PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                   getch();
                  }   
                  else
                    {
                     if(n3==2)
                        {
                          system("cls");
                         
                          gotoxy(110,1);cprintf("                            Cold-ATB Secion Instrumental ");
                          printf(" Este es un Set que esta disponible en exclusive por $100 pesos por cancion, \n\n integramos este set de TRACE/CLASIC unica y exclusiva por el DJ ATB");
                          char soundfile[] = "C:/Users/Jorge/Desktop/Music/cold.wav";
                          PlaySound((LPCSTR)soundfile, NULL, SND_FILENAME | SND_ASYNC );
                          getch();
                        }
                                                                           
                     }
                                                                   
                }

                else
                {
                    printf("nada");
                }                                             
             
 


}



es ese.. no le encuentro error alguno

Muchas gracias
#8
Cita de: Xafirot en  8 Marzo 2011, 23:38 PM
SDL_Surface *imagen = SDL_LoadBMP("imagen.bmp"); //esto carga la imagen.

SDL_BlitSurface(imagen,0,PANTALLA,0);// en pantalla pones la SDL_Surface de la pantalla XDD. y los 0 es la posicion que copias de la //imagen , y la posicion donde la pegas en la pantalla poniendose "&" segudido de la variable SDL_RECT
//SDL_BlitSurface(imagen,&SDL_Rect,PANTALLA,&SDL_Rect);


PD:http://softwarelibre.uca.es/wikijuegos/Portada
PD2:  SDL_FillRect (screen, NULL, color); esto es para pintar.
PD3: Antes de correr empieza a caminar XDD suerte cualquier cosa intentare ayudarte
SALUDOS.

hola amigo.. esos codigos que me pasaste van en?... en otro codigo o en el que postie? .. #noentender xD
#9
Hola amigos ando iniciando en DevC++ con SDL y hay un codigo ejemplo que trae entonces quiero modificarlo e insertar una imagen, pero como? es posible?..

Ando iniciando en este mundo del SDL :rolleyes: :rolleyes:


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <SDL/SDL.h>
#include <windows.h>

/*
PLEASE NOTE: the program will require SDL.dll which is located in
              dev-c++'s dll directory. You have to copy it to you
  program's home directory or the path.
*/

/* The screen surface */
SDL_Surface *screen = NULL;


/* This function draws to the screen; replace this with your own code! */
static void
draw ()
{
    static int direction = 0;
    static int value = 0;
    static int which = 0;
    SDL_Rect rect;
    Uint32 color;

    /* Create a black background */
    color = SDL_MapRGB (screen->format, 0, 0, 0);
    SDL_FillRect (screen, NULL, color);

    /* Determine which color the layer should have */
    if (direction == 0)
    {
        value += 2;
        if (value >= 256)
        {
            value = 255;
            direction = 1;
        }
    }
    else
    {
        value -= 2;
        if (value <= 5)
        {
            value = 0;
            direction = 0;
            which++;
            if (which == 5)
                which = 0;
        }
    }

    /* Draw a layer with variable color */
    switch (which)
    {
      case 0:
          color = SDL_MapRGB (screen->format, value, 0, 0);
          break;
      case 1:
          color = SDL_MapRGB (screen->format, 0, value, 0);
          break;
      case 2:
          color = SDL_MapRGB (screen->format, 0, 0, value);
          break;
      case 3:
          color = SDL_MapRGB (screen->format, value, value, value);
          break;
      case 4:
          color = SDL_MapRGB (screen->format, value, 0, value);
          break;
    }

    rect.w = screen->w / 2;
    rect.h = screen->h / 2;
    rect.x = (screen->w / 2) - (rect.w / 2);
    rect.y = (screen->h / 2) - (rect.h / 2);
    SDL_FillRect (screen, &rect, color);


    /* Make sure everything is displayed on screen */
    SDL_Flip (screen);
    /* Don't run too fast */
    SDL_Delay (3);
}


int
main (int argc, char *argv[])
{
    char *msg;
    int done;

    /* Initialize SDL */
    if (SDL_Init (SDL_INIT_VIDEO) < 0)
    {
        sprintf (msg, "Couldn't initialize SDL: %s\n", SDL_GetError ());
        MessageBox (0, msg, "Error", MB_ICONHAND);
        free (msg);
        exit (1);
    }
    atexit (SDL_Quit);

    /* Set 640x480 16-bits video mode */
    screen = SDL_SetVideoMode (640, 480, 16, SDL_SWSURFACE | SDL_DOUBLEBUF);
    if (screen == NULL)
    {
        sprintf (msg, "Couldn't set 640x480x16 video mode: %s\n",
          SDL_GetError ());
        MessageBox (0, msg, "Error", MB_ICONHAND);
        free (msg);
        exit (2);
    }
    SDL_WM_SetCaption ("BIENVENDOS A INTERACTIVO COBAY", NULL);

    done = 0;
    while (!done)
    {
        SDL_Event event;

        /* Check for events */
        while (SDL_PollEvent (&event))
        {
            switch (event.type)
            {
            case SDL_KEYDOWN:
                break;
            case SDL_QUIT:
                done = 1;
                break;
            default:
                break;
            }
        }

        /* Draw to screen */
        draw ();
    }

    return 0;
}
#10
Akai

a funcionado: gracias a el consejo que me haz proporcionado.


Una duda mas, veo que se ve mal y aqui no puedo usar gotoxy ni el texttcolor, que puedo usar envez de eso ? me tienen recomendado COORD pero la verdad no se como utilizar ni las librerias que debe llevar...

gracias