• Viernes 29 de Marzo de 2024, 06:09

Mostrar Mensajes

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


Mensajes - ProfesorX

Páginas: 1 ... 30 31 [32]
776
C/C++ / Re: Duda Del Preprocesador
« en: Martes 25 de Septiembre de 2007, 01:59 »
Pues no, no esta permitido, pero podrias solucionarlo creando una tercera constante de preprocesador, cuando tengas definida una u otra constante.

Mas claro, por si no me entendiste ;)

Código: Text
  1.  
  2. #ifdef _RELEASE
  3. #define _DEBUG_RELEASE
  4. #endif
  5.  
  6. #ifdef _DEBUG
  7. #define _DEBUG_RELEASE
  8. #endif
  9.  
  10. #ifdef _DEBUG_RELEASE
  11.    //Codigo
  12. #endif
  13.  
  14.  

Saludos :)

777
Diseño de Algoritmos / Re: Algoritmo Que Muestre Las Combinaciones
« en: Domingo 16 de Septiembre de 2007, 22:14 »
No se hacen tareas en este foro, las tareas son para que tu aprendas.

Muestra lo que hayas hecho y quizas alguien te ayude, de lo contrario, no creo que nadie lo haga.

Saludos :)

778
C# / Re: Duda Date Time
« en: Lunes 10 de Septiembre de 2007, 02:01 »
El problema es que no existe un valor nulo (vacio) para la fecha, cuando creas un nuevo valor de fecha, por defecto tiene la fecha 01/01/0001 12:00 am, ese es el valor que podrias utilizar para comprobar que la fecha esta vacia, asumiendo claro que no necesites utilizar esa fecha  <_<

Una pagina que encontre que habla sobre eso:

http://www.codeproject.com/cs/miscctrl/dateedit.asp

Saludos

779
Visual C++ / Re: Pilas
« en: Lunes 10 de Septiembre de 2007, 01:28 »
Y no quieres tambien que te lo graben en un cd y te lo lleven a la puerta de tu casa???

1. No escribas en mayusculas, se entiende como que estas gritando

2. No se hacen tareas, si tienes una duda puntual, demostrando que ya hiciste algo, entonces muy probablemente alguien te ayudara

3. Que algun moderador cierre este hilo  :lightsabre:

780
C/C++ / Re: Operador Complemento A Uno
« en: Lunes 27 de Agosto de 2007, 19:32 »
El problema esta en tu falta de la comprension de como se manejan internamente los numeros en la computadora, y depende tambien de si manejas valores de un byte o de dos bytes, y de si manejas signo o no.

Si manejas valores de un byte sin signo, el rango de valores va de 0 a 255, y si manejas valores con signo, el rango va de -127 a 128, pues un bit del byte se utiliza para el signo. entonces, si tomara tu primer ejemplo, lo transformara a un numero de 8 bits, obtendria esto:

Cero: 00000000
Complemento: 11111111

Podras ver que el numero 11111111, representaria el 255, o el -1, dependiendo de si decides que el numero lleva signo o no. puedes comprobarlo, utilizando la siguiente sentencia:

Código: Text
  1.  
  2. printf("Complemento a uno de 0: %d, %u, %x", ~0, ~0, ~0 );
  3.  
  4.  

que te imprimira el numero como un entero con signo, un entero sin signo, y en formato hexadecimal respectivamente.

para mas informacion:

http://www.zator.com/Cpp/E4_9_3.htm
http://es.wikipedia.org/wiki/Representaci%...meros_con_signo

Saludos  :hola:

781
C/C++ / Re: Problema Con Programa "fallo En Vector"
« en: Lunes 20 de Agosto de 2007, 20:07 »
Cita de: "Ithilien"
La segunda: SObre depuradores no estoy muy puesto y siempre recurro al printf("llega\n") o cout << "llega\n" ; que es un poco feo...Eternal Idol, puedes facilitarme algún tutorial? Y, en que programa lo depuras? Gracias de antemano.
Pues eso depende de que IDE/Compilador Utilices.

Si Utilizas el Visual Studio (Express o Porfessional), ya viene con depurador integrado, y es muy facil de usar, solo tienes que cambiar las opciones de compilacion para que te genere informacion de depuracion, y listo, utilizas las teclas F5 para comenzar la depuracion y F11/F10 para depuracion paso a paso por instruciones/procedimientos.

El viejo Turbo C tambien incluia un depurador facil de usar.

GCC/Mingw usa su propio depurador GDB, pero es mas dificil de usar, (al menos yo nunca he podido depurar bien con el :()

Saludos...

782
C/C++ / Re: Simulacion : Semaforo
« en: Miércoles 1 de Agosto de 2007, 21:50 »
Por que te complicas la vida con algo tan simple?

Podrias hacer un ciclo de 1 hasta 5, y luego cambiar los colores de acuerdo a lo siguiente:

Código: Text
  1.  
  2. void luz::color(int var)
  3. {
  4. if(var==1) {cout&#60;&#60;&#34; ROJO&#092;n &#34;;}
  5. if(var==2) {cout&#60;&#60;&#34; AMARILLO&#092;n &#34;;}
  6. if(var==3) {cout&#60;&#60;&#34; VERDE&#092;n &#34;;}
  7. if(var==4) {cout&#60;&#60;&#34; AMARILLO&#092;n &#34;;}
  8. if(var==5) {cout&#60;&#60;&#34; ROJO&#092;n &#34;;}
  9. };
  10.  
  11.  

Ahora lo de los colores de pantalla, no es muy facil hacerlo, pero puedes buscar en la funciones de consola, en MSDN, especificamente SetConsoleTextAttribute.

Saludos :)

783
C/C++ / Re: Ayuda Con Una Estructura!!!!!!!!!!
« en: Miércoles 1 de Agosto de 2007, 20:52 »
Y donde guardas el valor del salario neto?

Para poder ordenar por el metodo de la burbuja, necesitas guardar ese valor en la estructura, por lo que pude apreciar, solo lo calculas, pero no lo guardas.

Veo que en todos lados calculas el valor, pero no guardas nada en la estructura, si guardaras, te asuguro que se te simplificarian mucho las cosas ;)

un simple:

Código: Text
  1.  
  2. s[i].sn = sueldoneto(s[i]);
  3. cout&#60;&#60;&#34;El salario neto es: &#34;&#60;&#60;s[i].sn&#60;&#60;endl;
  4.  
  5.  

para guardar el valor del sueldo neto, una vez guardado el valor en s.sn, ya puedes ordenar por cualquier metodo que quieras, en este caso burbuja.

te recomendaria tambien que guardes el resto de valores en la estructura, en lugar de calcular cada vez que quieras impirmir

Código: Text
  1.  
  2. s[i].sb = sueldobruto(s[i]);
  3. s[i].d = desc(s[i]);
  4.  
  5.  

y asi para todos los valores

Saludos :)

784
C# / Re: Captura Webcam En C#
« en: Domingo 22 de Julio de 2007, 04:01 »
Me intereso tu clase, pero creo que deberias poner el codigo completo que utilizaste (formularios, clases extra, etc.) ya que me marco los siguientes errores:

Código: Text
  1.  
  2. C:&#092;CvsProjects&#092;proyecto-x&#092;alfa&#092;jubilee&#092;QuickGUI&#092;GenericProgramming&#092;WebCam.cs(26,20): error CS0246: No se puede encontrar el tipo o el nombre de espacio de nombres 'Image' (¿falta una directiva using o una referencia de ensamblado?)
  3. C:&#092;CvsProjects&#092;proyecto-x&#092;alfa&#092;jubilee&#092;QuickGUI&#092;GenericProgramming&#092;WebCam.cs(27,13): error CS0246: No se puede encontrar el tipo o el nombre de espacio de nombres 'Form' (¿falta una directiva using o una referencia de ensamblado?)
  4. C:&#092;CvsProjects&#092;proyecto-x&#092;alfa&#092;jubilee&#092;QuickGUI&#092;GenericProgramming&#092;WebCam.cs(29,13): error CS0246: No se puede encontrar el tipo o el nombre de espacio de nombres 'Form' (¿falta una directiva using o una referencia de ensamblado?)
  5.  
  6.  

y asi sucesivamente

Saludos :)

785
C/C++ / Re: C Y Mysql Distribuible?
« en: Domingo 22 de Julio de 2007, 03:49 »
Que yo sepa, no se puede, puesto que para manipular los archivos de datos de mysql, necesitas tener instalado el servidor (manejador), si no, ¿como accedes a los datos, que estan en un formato binario?

Una solucion (en caso de que no te importe cambiar de manejador de base de datos y que no requieras algo muy avanzado) seria utilizar la libreria SQLite, buscala en google.

Saludos :)

786
C/C++ / Re: Movimiento
« en: Domingo 22 de Julio de 2007, 03:41 »
Aunque no lo mencionas, supongo que por la libreria estas utilizando Turbo c, bueno, hace años hice algo parecido, la solucion seria que antes de que dibujes el nuevo circulo, dibujes en el mismo lugar otro circulo pero con el mismo color que utilizas para el fondo, para que se borre el anterior, y entonces dibujas el nuevo circulo en la nueva posicion.

Tambien podrias hacer XOR de bits, busca mas informacion al respecto.

Saludos :)

787
VB .NET / Re: Programa Para Gimnasio
« en: Domingo 22 de Julio de 2007, 03:33 »
Puedes buscar informacion de VB en la pagina del guille www.elguille.info, hace tiempo recuerdo haber bajado de ahi un proyecto paso a paso para una agenda en Visual Basic 6, no se si lo hayan actualizado, pero pienso que aunque no sea asi, te puede servir de mucho para aprender las bases de lo que necesitas.

Saludos :-)

788
C/C++ / Re: Help Me! (codigo En C)
« en: Martes 17 de Julio de 2007, 21:08 »
Cita de: "x_reaccion"
Hola

yo discrepo mi amigo, no todo lo aprendes leyendo a mi parecer la mayoria de las cosas buenas se aprenden y perfeccionan con practica

No en mala  ;)
Estoy de acuerdo contigo en el aspecto de que no basta con leer, se necesita practica, pero si lees el post original, notaras que su codigo tiene errores basicos, que denotan la falta de haber dedicado un pequeño tiempo a leer un libro de C con cosas basicas, o alguno de los muchos tutoriales/cursos que abundan en internet, como bien anoto el otro compañero.

Saludos y sin rencores ;)

789
C/C++ / Re: Help Me! (codigo En C)
« en: Lunes 16 de Julio de 2007, 21:41 »
A simple vista, estas incrementando de manera incorrecta la variable j

en lugar de:

Código: Text
  1.  
  2. j=j++;
  3.  
  4.  

debes poner

Código: Text
  1.  
  2. j++;
  3.  
  4.  

ademas, el incremento de j debes hacerlo despues de validar el valor, no dentro del ciclo de validacion:

Código: Text
  1.  
  2. while(aux&#60;1||aux&#62;7)
  3. {
  4. //validacion
  5. ...
  6. }
  7.  
  8. j++;
  9.  
  10.  

Te recomiendo que tomes un buen libro de C++, pues a leguas se nota que no tienes ni idea de la programacion.

Saludos

790
C/C++ / Re: Ejercicio En C - Ayuda
« en: Martes 3 de Julio de 2007, 01:29 »
El problema es esta linea:

Código: Text
  1.  
  2. VOL = 1/3 * AB * ALT;
  3.  
  4.  

El resultado de la division entera 1/3 da cero, y al multipilcarlo por lo demas, siempre te dara cero, cambiala por:

Código: Text
  1.  
  2. VOL = 1.0/3.0 * AB * ALT;
  3.  
  4.  

De esa forma, el compilador hara una division flotante (float) en lugar de entera.

Saludos 8)

791
C# / Traducir Una Plantilla De C++ A C#
« en: Jueves 28 de Junio de 2007, 04:31 »
Bueno, le he estado buscando, pero no le he dado en el clavo, y es que nunca entendi muy bien las plantillas avanzadas en C++  :unsure: . basicamente me gustaria que alguien me dijera a que traduce la siguiente plantilla:
Código: Text
  1.  
  2. class MemberFunctionSlot
  3. {
  4. public:
  5.   virtual ~MemberFunctionSlot() {};
  6.   virtual bool execute(const EventArgs& args) = 0;
  7. };
  8.  
  9. template&#60;typename T&#62;
  10. class MemberFunctionPointer :
  11.   public MemberFunctionSlot
  12. {
  13. public:
  14.   typedef bool (T::*MemberFunction)(const EventArgs&);
  15. public:
  16.   MemberFunctionPointer() :
  17.     d_undefined(true)
  18.   {}
  19.   MemberFunctionPointer(MemberFunction func, T* obj) :
  20.     d_function(func),
  21.     d_object(obj),
  22.     d_undefined(false)
  23.   {}
  24.   virtual ~MemberFunctionPointer() {}
  25.  
  26.   virtual bool execute(const EventArgs& args)
  27.   {
  28.     if(!d_undefined) return (d_object-&#62;*d_function)(args);
  29.     return false;
  30.   }
  31. protected:
  32.   MemberFunction  d_function;
  33.   T*        d_object;
  34.   bool      d_undefined;
  35. };
  36.  
  37.  

Aqui pongo la aproximacion que he hecho en C#:

Código: Text
  1.  
  2. public class MemberFunctionSlot
  3. {
  4.     public virtual bool execute(EventArgs args);
  5. }
  6.  
  7. public class MemberFunctionPointer&#60;T&#62; : MemberFunctionSlot
  8. {
  9.     public bool MemberFunction(EventArgs args);
  10.     public MemberFunctionPointer()
  11.     {
  12.         d_undefined(true);
  13.     }
  14.     public MemberFunctionPointer(MemberFunction func, T obj)//Esta linea me da error
  15.     {
  16.         d_function(func);
  17.         d_object(obj);
  18.         d_undefined(false);
  19.     }
  20.  
  21.     public virtual bool execute(EventArgs args)
  22.     {
  23.         if (!d_undefined) return (d_object.d_function)(args);
  24.         return false;
  25.     }
  26.     protected MemberFunction d_function;//esta linea me da error
  27.     protected T d_object;
  28.     protected bool d_undefined;
  29. }
  30.  
  31.  
El error que me marca es el siguiente:

Citar
C:\CvsProjects\proyecto-x\alfa\jubilee\QuickGUI\src2\QuickGUIMemberFunctionPointer.cs(36,38): error CS0118: 'Cm.QuickGUI.MemberFunctionPointer<T>.MemberFunction(System.EventArgs)' es 'método' pero se utiliza como 'tipo'
C:\CvsProjects\proyecto-x\alfa\jubilee\QuickGUI\src2\QuickGUIMemberFunctionPointer.cs(50,19): error CS0118: 'Cm.QuickGUI.MemberFunctionPointer<T>.MemberFunction(System.EventArgs)' es 'método' pero se utiliza como 'tipo'

Si alguien me puede iluminar que estoy haciendo mal y como lo puedo arreglar, se lo agradecere

Saludos :)

792
C/C++ / He Diseñado Una Web Sobre Ogre, Acepto Sugerencias
« en: Martes 26 de Julio de 2005, 01:06 »
Pues eso, como me ha llamado mucho la atencion la programación gráfica 3D, hice una página acerca de OGRE, utilizando XOOPS, se aceptan opiniones y sugerencias, aunque advierto, todavia no pongo mucho contenido.

Saludos :D

http://profesorxy.cogia.net

793
Visual Basic 6.0 e inferiores / Re: Me Estoy Volviendo Loca! Que Hace Esto??
« en: Lunes 4 de Julio de 2005, 18:22 »
Hola sandra68 no te vuelvas loca :P, mira, al parecer, la mayoria de las operaciones que veo en la funcion son operaciones de bits, que a veces son un poco complejas de entender si no has tenido buenas bases de matematica para la computacion, tratare de explicarte nada mas la linea que dices no entender nada, pero te recomiendo que busques un libro de matematicas para computacion, o alguien de tu localidad que sepa mas, pues como dije antes seria dificil explicarte todo en un solo post  :rolleyes: :

Primero que nada, las cantidades tienen un &H al principio, lo que significa que estan en hexadecimal, esto es para facilitar el manejo de los numeros, pero para entender como funciona, hay que ver esos mismos numeros en binario (0 y 1) pues en ese formato es como se entiende mejor como funcionan las operaciones entre bits.

El numero F es 15 en decimal, y en binario es 1111, o sea, que por cada F tu vas a poner 1111 en binario.

La operacion "and" se utiliza aqui para verificar que bits se encuentran encendidos (o sea, cuales son igual a 1), pues si tu tienes un numero cualquiera y le haces "and &HF", te regresara el mismo numero, pues recuerda que el "and" te devuelve 1, si los dos numeros son 1, y 0 en cualquier otro caso. O sea que si tenemos:

1010 and 1111

obtendremos 1010 de nuevo, pues cada digito, se compara con el digito del otro numero que este en la misma posicion (el primer digito del primer numero con el primer digito del segundo numero, el segundo digito del primer numero se compara con el segundo digito del segundo numero y asi sucesivamente)

La operacion "xor", se utiliza aqui para invertir los bits, pues si el primer digito es 1, se vuelve cero y viceversa, tomando como ejemplo los mismos numeros anteriores, si hacemos:

1010 xor 1111

obtendremos 0101

La funcion Mid(), se utiliza para extraer un caracter de una cadena, la funcion Asc() convierte ese mismo caracter en un numero, pues las operaciones de bits solo se pueden hacer con numeros, no con caracteres, y por ultimo la funcion CLng() convierte ese mismo numero a formato Long.

Entonces, resumiendo, basicamente la linea

i = CLng(Asc(Mid(trama, j, 1))) Xor ((dwCrc32) And &HFF&)

Hace lo siguiente:

Toma un caracter de una cadena, lo convierte a numero, checa que bits estan encendidos de ese numero, y luego los invierte, y guarda el resultado en la variable i.

Para complementar, te dejo la tabla de verdad de los operadores and, or, xor.

0 and 0 = 0
0 and 1 = 0
1 and 0 = 0
1 and 1 = 1

0 or 0 = 0
0 or 1 = 1
1 or 0 = 1
1 or 1 = 1

0 xor 0 = 0
0 xor 1 = 1
1 xor 0 = 1
1 xor 1 = 0

Saludos y espero que te sirva la informacion B) .

794
Publicaciones y e-books / Re: ¿Qué Opinan De Código Latino?
« en: Jueves 30 de Junio de 2005, 19:18 »
Felicidades blag, y muy buen trabajo al editar la revista.

Solo una pregunta, que puedo hacer para mandarte una colaboracion, y que aparezca en el siguiente numero de la revista?

Saludos  B)

795
Pascal / Re: Duda Sobre Recursividad
« en: Jueves 30 de Junio de 2005, 19:12 »
Bueno, solo añadir algo a lo que te contestaron, como bien te dijeron, el realizar un algoritmo de manera recursiva por lo general consume mas recursos que de manera no recursiva, entonces a lo mejor te preguntaras ¿cual es la ventaja de hacerlo de manera recursiva?

La razon seria simplicidad, hay algoritmos que se realizan de manera mas simple y natural de manera recursiva que si los implementaramos de manera no recursiva. Un ejemplo clasico que se me ocurre seria resolver el problema de las torres de hanoi (la solucion es mas natural de implementar de manera recursiva que de manera no recursiva). Obviamente en ese caso debemos aquilatar si deseamos simplicidad al hacer el algoritmo, o eficiencia en el uso de recursos.

Un saludo 8)

796
ASM (Ensamblador) / Re: Necesito Un Cajero Automatico Urgente!!!
« en: Martes 31 de Mayo de 2005, 00:51 »
Y no quieres tambien una nieve de limon? B)

Disculpa el sarcasmo, pero en foro es de ayuda en problemas especificos (despues de que hayas intendado hacerlo), no de haganme mi tarea que estoy en examenes finales.

Si a este grado del curso no sabes hacer lo que te indican, quiere decir que hubo problemas ahi, y pues lo mejor sera repetir el curso de nuevo, para que reafirmes tus conocimientos.

Un saludo B)

797
Publicaciones y e-books / Re: ¿Qué Opinan De Código Latino?
« en: Jueves 19 de Mayo de 2005, 01:07 »
Hola Blag!!! pues seguimos esperando el siguiente numero de Codigo Latino :) que ha pasado??? Espero que siga, pues me parece un excelente proyecto.

Saludos B)

798
Programación de Videojuegos / Re: Recomendacion
« en: Lunes 16 de Mayo de 2005, 22:48 »
http://www.google.com

Ahi puedes encontrar mas.

Un saludo 8)

799
Programación de Videojuegos / Proyecto-x
« en: Lunes 16 de Febrero de 2004, 14:34 »
Proyecto-X

URL : http://www.proyecto-x.net

Web dedicada al desarrollo de un juego, que esta siendo creado como un proyecto libre, por el grupo de programación y diseño Cubical Minds.

En este portal, podreis encontrar información tanto sobre el juego, como sobre los que lo desarrollan, además si quereis colaborar en la creación de dicho juego, este es el lugar para contactar.

Si lo que quieres es colaborar en la creacion del juego, ponte en contacto en http://www.proyecto-x.net, sigue los pasos que se te indican, y pronto recibiras noticias. Para ayudar en la creacion de dicho juego, no necesitas conocimientos especificos y muy altos, unicamente necesitas ganas de aprender y pasarlo bien.

Todos son bienvenidos, aunque lo que mas necesita en este momento son grafistas y modeladores 3D.

Un Saludo.

Páginas: 1 ... 30 31 [32]