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 - anonimo12121

#1122
el código que tienes puesto es para cargar una extensión .mid quizás tendrías que poner .mp3
#1123
Podrías poner el código que debería de funcionar en teoría para el .mp3.
#1124
Cita de: Akai en 29 Marzo 2011, 16:35 PM
Si, a eso me refería. Y no, no te ahorras un if. Bueno, quizá en el código si, pero en ejecución ahorras iterar comprobando cada vez.
Como puedo saber formas de optimizar mis códigos?
#1125
Cita de: Akai en 29 Marzo 2011, 15:29 PM
Un consejo, Xafi:
Si esta comprobación
Código (cpp) [Seleccionar]
 if(i<10)name[j+1]='0';
               else name[j+1]=t[0];
               if(i<10)name[j+2]=t[0];
               else name[j+2]=t[1];


La sacases fuera del bucle, ganarías en velocidad. De hecho, podrías hacer dos bucles, uno de 0 a 9, otro de 10 en adelante.

Simplemente un consejo para evitar comprobaciones que no tienen sentido una vez pasas la frontera del 10
Voy analizar bien lo que dices para ver si lo puedo optimizar como dices en lo escrito. pero creo que lo conforme esta los hace esa comparación cuando llega al '-'.
Gracias.

EDITO: vale creo que ya entendí XD
EDITO2: No se me ocurre otra forma XDDD
EDITO3: La única forma que se me acaba de ocurrir es esta.
Código (cpp) [Seleccionar]
#include <iostream>
#include <sstream>
using namespace std;
class clase{
   private:
   public:
       clase();
       char nombre[100];
       void acarga_imagen(char *name,int n);
};
clase::clase(){
   strcpy(nombre,"megaman-01.bmp");
};
void clase::acarga_imagen(char *name,int n){
   char t[2];
   for(int i=1;i<n+1;i++){
       if(n<10){
           for(int j=0;;j++){
               if(name[j]=='.')break;
               if(name[j]=='-'){
                   sprintf(t,"%d",i);
                   name[j+1]='0';
                   name[j+2]=t[0];
                   break;
               }
           }
       }
       else {
           for(int j=0;;j++){
               if(name[j]=='.')break;
               if(name[j]=='-'){
                   sprintf(t,"%d",i);
                   name[j+1]=t[0];
                   name[j+2]=t[1];
                   break;
               }
           }
       }
           
       cout << name << endl;
   }
};
int main(int argc,char *argv[]){
   clase c;
   c.acarga_imagen(c.nombre,5);
   cin.get();
   return 0;
}


PD: Creo que así me ahorra un "if".
#1126
Ya lo he solucionado no se que era lo que me pasaba XD siento las molestias gracias.

Código (cpp) [Seleccionar]
#include <iostream>
#include <sstream>
using namespace std;
class clase{
    private:
    public:
        clase();
        char nombre[100];
        void acarga_imagen(char *name,int n);
};
clase::clase(){
    strcpy(nombre,"megaman-01.bmp");
};
void clase::acarga_imagen(char *name,int n){
    char t[2];
    for(int i=1;i<n+1;i++){
        for(int j=0;;j++){
            if(name[j]=='.')break;
            if(name[j]=='-'){
                sprintf(t,"%d",i);
                if(i<10)name[j+1]='0';
                else name[j+1]=t[0];
                if(i<10)name[j+2]=t[0];
                else name[j+2]=t[1];
                break;
            }
        }
        cout << name << endl;
    }
};
int main(int argc,char *argv[]){
    clase c;
    c.acarga_imagen(c.nombre,5);
    cin.get();
    return 0;
}
#1127
Mix_LoadMP3("music.mp3"); prueba  a ver si  funciona.

EDITO: No funciona creo...

CitarSDL_Mixer se encarga de reservar un canal exclusivo para la reproducción de música para nuestra aplicación. Como en la gestión de sonidos da soporte a multitud de formatos. Como ocurría con los chunks, la música tiene que ser cargada de un fichero y una vez que terminemos de trabajar con ella deberemos de liberar el recurso. Para cargar la música del videojuego utilizamos la función:
Mix_Music *Mix_LoadMUS(const char *file);

Esta función recibe como parámetro el fichero donde se encuentra la música que queremos cargar. La función devuelve un puntero a la estructura de datos que guarda la música del videojuego de tipo Mix_Music. La única diferencia con la función de cargar sonidos "convencionales es que no tenemos que espeficiar el canal en el que queremos colocar el sonido. Como puedes observar existe un tipo exclusivo de datos dedicado a este tipo de sonidos. Como pasa con otros tipos de datos la definición de Mix_Music está oculta al usuario, lo que no nos supone ningún problema ya que trabajaremos siempre con un puntero a esa estructura y alterando los campos de la misma directamente.

Si ocurre algún error al cargar el fichero de música la función devuelve el valor NULL. El tipo de formato que podemos reproducir es muy amplio como comentabamos al principo del capítulo. Entre ellos se encuentran el MP3, MOD, WAV... y otros.

Como comentamos hace unas líneas cuando no necesitemos tener la música disponible en memoria principal deberemos liberar ésta para realizar una buena gestión de nuestros recursos. La función que permite realizar esta tarea es:
void Mix_FreeMusic(Mix_Music);

Esta función recibe como parámetro el puntero devuelto al cargar el fichero de música y como ya hemos dicho libera los recursos ocupados por ella.
#1128
El mio es MAC XDD es caro manes XDD
#1129
Os habéis dado cuenta del color de pestañas al abrirlas desde una web con click derecho??? xDD eso mola
#1130
Cita de: Spider-Net en 27 Marzo 2011, 23:27 PM
En un presupuesto no tiene por qué pasar nada por no poner tu DNI ni por supuesto tienes por qué poner el IVA.

Eso sí, si vas a cobrarle a una empresa o un particular que va a declarar luego una factura conforme a tu presupuesto obviamente tienes que cobrar el IVA, y estar dado de alta como autónomo, sino legalmente no puedes realizar ese trabajo.

Si ambos acordáis hacer el trabajo sin declarar nada, vale. Pero ten en cuenta que si haces una factura a una empresa, esa empresa puede declarar tu factura como un gasto y cuando hacienda compruebe que tú no estás dado de alta como autónomo te pueden acusar de fraude fiscal, así que cuidado con esto.
muchas gracias ma quedado claro.