• Jueves 5 de Junio de 2025, 06:57

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

Páginas: 1 ... 131 132 [133] 134 135 ... 231
3301
C/C++ / Re: Un Verdadero Reto
« en: Miércoles 22 de Junio de 2005, 17:04 »
asi es se ve muy simplesito de hacer...
por eso lo sacque de los retos pues nunca confirmó cual era la dificultad... porque la verdad no la vi por ningun lado.

3302
C++ Builder / Re: Enviar Y Recibir Cualquier Archivos
« en: Miércoles 22 de Junio de 2005, 17:03 »
hola
no te envio fuentes porque la verdad no te seria de utilidad, sos fuentes fueron implementados bajo plataforma UNIX en len guaje c y los hice en la epoca en que no proramaba muy bien asi que son incompresibles aun para mi.

la idea es muy sencilla
ejemplo en algo parecido a pseudocodigo:
Código: Text
  1.  
  2. //servidor
  3. //enviar nombre de archivo
  4. enviar(nombreArchivo);
  5. //enviar tamaño de archivo
  6. enviar(tamano);
  7. for(...,...,...)
  8. {
  9.   //leer un pedazo del archivo
  10.   fread(buffer, 512,1,archivo);
  11.  ...
  12.  ...
  13.   enviar(tamanobufferbytes)
  14.   if (tamanobufferbytes =0)
  15.     break;
  16.   else
  17.   enviar(buffer);
  18. }
  19.  
  20.  

esa es la idea general y el cliente:
Código: Text
  1.  
  2. //cliente
  3. //enviar nombre de archivo
  4. recibir(nombreArchivo);
  5. crearArchivo(nombreArchivo);
  6. //recibir tamaño de archivo
  7. recibir(tamano);
  8. for(...,...,...)
  9. {
  10.   //recibir tamano de bytesque se recibiran para el archivo
  11.   recibir(tamanobufferbytes);
  12.   //recibir el segmento de archivo
  13.   recibir(buffer);
  14.   //escribir un pedazo del archivo
  15.   fwrite(buffer, 512,1,archivo);
  16.  ...
  17.  ...
  18.   if (tamanobufferbytesAcumulado =tamano)
  19.     break;
  20.  
  21. }
  22.  
  23.  

Aca si hay m,ucho trabajo para Ingenmieros pero solo para los buenos ingenieros, ya que de igual manera hay personas que son ingenieros y no consiguen trabajo nunca y los ve uno manejando taxis tiendas etc... o desempleados pero si eres bueno simpre tendras trabajo..

tengo incluso compañeros de la universidad trabajan do en servicios de vigilancia, lo cual no tiene nada de malo sino hasta cuando se piensa en el dinero y el tiempo invertido en una carrera profesional...
y esto es por que no consiguen trabajo...

Sin embargo algunos ( entre los cuales nos encontramos mi hermano y yo) siempre nos hacen ofertas de trabajo y cada vez que hemos cambiado de trabajo ha sido porque nos han ofrecido el 70% o más de dinero en un trabajo diferente y permanentemente estamos recibiendo ofertas que a veces tenemos que rechazar...

Asi que los que aca no consiguen es porque no se preocuparon por prepararse bien profesionalmente, intelectualmente y socialmente.

3303
Dudas informáticas / Re: Fat32 Vs Ntfs
« en: Miércoles 22 de Junio de 2005, 14:14 »
en cualquier sistema NTFS es mejor que FAT32
porque NTFS incorpora controles de seguridad para acceso de los archivos y adicionalmente incorpora estructuras que evitran los ya comunes errores de redundancia ciclicica en FAT entre otras cosas.

NTFS es en teoría más rápido por muchas razones entre ellas el control de tamaño de bloque y ultimamente la posibilidad de convertirse en discos dinamicos, pero de todas maneras es apenlas logico saber que estas caracteristicas espcialmente las de seguridad tienen un costo en performance.

Adicionalmente, en mi concepto, lo peor que puedes hacer es cambiar de un sistema de archivos a otro pues las veces que lo he ehecho he obtenido un sistema considerablemente lento, lo ideal es que formatees tu disco y desde un comienzo uses NTFS, de este modo podras aprovechar las caracteristicas de NTFS sin tener un bajo rendimiento.  :scream:

3304
C++ Builder / Re: Enviar Y Recibir Cualquier Archivos
« en: Miércoles 22 de Junio de 2005, 04:28 »
no tengo codigo de C++ ni de C lo suficientemente sencillo como para que lo entiendas, es decri es que he ehcho cosas pero mumcho mas complicadas que solo enviar el archivo, de heco lo que hice en C fue abrir tres hilos cada hilo colocarlo en una posicion determinada del archivo y de ahi enviar en paralelo cada segmento de archivo a tres estaciones diferentes dentro de una red, y por supueso el proceso inverso een el cual hay un socket en cada hilo y cada uno en paralelo comienza a reconstruirr la parte del arcjhivo de manera local..

Como vez si se puede hacer, debes tener problemas en el accept o algo asi por estilo , lo mejor es que antes de enviar el archivo hagas pruebas enviando mensajes de varios tipos diferentes y luego cuando ya tengas un poco de practica le sumas en el envio del archivo.

Por cierto ahora que recuerdo no es bueno que envies todo el archivo con una sola instruccion sino que debes enviar pequeñas tramas cada vez, lo recomendado es enviar tramas de 512 K aprox. y las vas ensamblando en el cliente.

3305
Visual C++ / Re: Como Controlar Un Mensaje Del Raton En Un Bucle
« en: Miércoles 22 de Junio de 2005, 03:36 »
Bueno yo diria que no debe usar hilos ( aunque no se mucho de C++) sino que esto mismo me pasaba en C#.NET y la solución era usar el metodo DoEvents

Lo que debe hacer es meter en el bucle un llamado a a ese metodo DoEvents existe para C++ y encontre esto:
Código: Text
  1.  
  2.  void CApplication::DoEvents()
  3. {
  4.  MSG msg;
  5.     while ( ::PeekMessage( &msg, NULL, 0, 0, PM_NOREMOVE ) )
  6.     {
  7.         if ( !PumpMessage( ) )
  8.         {
  9.             ::PostQuitMessage(0);
  10.             break;
  11.         }
  12.     }
  13.     // let MFC do its idle processing
  14.     for (long lIdle = 0; OnIdle(lIdle); lIdle++ ){;}
  15. }
  16.  
  17.  

En este link:
http://rcorral.mvps.org/

3306
C++ Builder / Re: No Se Nada
« en: Martes 21 de Junio de 2005, 14:11 »
bueno lo que has ecrito deja entrever que tienes deficienciias en parte de POO y de manejo de objetos asi que primero debes poberte a estudiar C++.
Lo de C++ Builder no es nada del otro mundo, C++ builder no es un lenguaje es nu compilador, el lenguaje C++ es el mismo en todo lado, es un estandart.

3307
Visual C++ / Re: Como Controlar Un Mensaje Del Raton En Un Bucle
« en: Martes 21 de Junio de 2005, 14:09 »
podrias ser un poco mas especifico? :huh:

3308
Dudas informáticas / Re: Ayuda_pantalla Y Duda
« en: Martes 21 de Junio de 2005, 14:05 »
acyualiza los drivers de tarjeta grafica y de tarjeta de tv inclusive los delmouse
.

En l pagina de cada fabricante deben estar las ultimas versiones.

3309
C# / Re: Ayuda..
« en: Sábado 18 de Junio de 2005, 22:55 »
correcto el algoritmo de juez nos dice si es un numero par o un numero impar pero no dice si es o no primo.

3310
C/C++ / Re: Error De Ejecucion De Listas En C
« en: Sábado 18 de Junio de 2005, 17:34 »
necesitaria ver en que parte estas llenando la estructura que imprimes, y como la estas enviando a la función.

3311
C# / Re: Discusion:
« en: Sábado 18 de Junio de 2005, 17:29 »
Por supuesto, pero no seguire discutiendo pues seria una discución sin fin y la verdad no me la paso todo el dia sin hacer nada y tengo que trabajar... :(

asi que decidi abandonar la converzacion, lo ideal que queria hacer era hacer un ejemplo yo mismo donde demostrara que lo que digo es cierto, pero lamentablemente ando muy mal de tiempo y tengo otros desarrollos muy urgentes por hacer. :huh:

Lo siento, si tengo tiempo en algunas semas hare lo de el ejemplo.. sino.. pues bien cada cual es libre de experimentar.

3312
C# / Re: Poo
« en: Sábado 18 de Junio de 2005, 17:07 »
hola,
no bajé tu exe por que ya se cual es el problema...
tienes deficiencias en los conceptos de POO, asi que esa va a ser la unica pregunta que dare respuesta, pues ademas no encuentra otras preguntas en el post.

POO es un paradigma de programación que nos permite hace una abstracción del mundo real y convertir esa abstracción en un componente, o pieza de software.

Anteriormente, en la porgramación en spagetti podiamos invertir muchas horas haciendo un prorama con muchos fragmentos de código, incluso teniamos muchos fragmentos que hacian exactamente lo mismo  o cosas muy similares, por ejempo un programa como un video juego tenia las instrucciones de como dibujar y de como producir sonidos repetidas o casi iguales para todos los personajes, lo cual hacia la programación algo muy largo y dispendioso de hacer, pero principalmente imposible de entender si tu mismo no eras quien habia hecho el programa.

Luego llago la programación estructurada a poner algo de ordem agrupando miles de lineas de código dentro de funciones, donde se debia tratar al máximo que las funciones fueran reutilizadas dentro del programa...
todo parecia ir muy bien.. pero los programas cada vez eran más grandes asi que pasaban cosas como estas:

Cuanta de ahorros, cuenta corriente

Los archivos fuente donde estaban las operaciones de una cuenta de ahorros y los fuentes donde estaban las operaciones de las cuentas corrientes tenien funciones parecidas, es decir umm por ejemplo la funcion bloquear cuenta estaba en ambas y si tenia que hacer un programa que manejara cuentas de ahorro y cuentas corrientes pues haria algo como esto:
Código: Text
  1.  
  2. #include "cuantasA.h"
  3. #include "cuantasC.h"
  4.  
  5. int main()
  6. {
  7.     ....?
  8.     ...?
  9. }
  10.  
  11.  

Como puedo hacer referecia a las operaciones de cuenta de ahorros o a las de cuenta corriente si ambas tienen el mismo nombre?, si fueran mis propios fuentes es simple... modificar los nombres de las operaciones... pero si son librerias que compre cada una por aparte y no tengo los fuentes?

que pasaría si cada libreria maneja constantes con el mismo nombre? o variables con el mismo nombre?...

Si tengo un enorme programa y quiero hacer uno nuevo que reutiliza miles de cosas que el anterior... quien me garantiza que las funciones que tome me vallan a servir si vienen de un programa diferente? como se que si tomo una libreria que se llame Ahorros voy a tener realmente solo las cosas que sirven para ahorros?

Estos y miles de miles de problemas más ya eran inmanejables asi que alguien se puso en la tarea de diseñar una froma de programar que me permitiera aislar un componente de otro, reutilizar los componentes y librarme de todos mis anteriores enrredos... asi nacio POO, que como veraz no tiene nada que ver con ventanas y cosas de un entorno grafico.. de hecho en lenguajes no Orientados a objetos como los lenguaje c, puedes hacer ventanas y botones y todo identico de como lo haces con un lenguaje orientado a objetos.

La idea es muy sencilla, imaginemos cun cuaderno,
que cosas se pueden decir de nuestro cuaderno pues podemos decirt:

*numero de paginas
*dibujo de la portada
*color de las hojas
*estilo de las hojas
*estilo de agrupamiento de hojas (grapado, argollado, anillado, etc)
*precio
*calidad del papel
*marca
*etc

que cosas se pueden hacer con un cuaderno? (solo co el cuaderno por el momento)

*abrir
*cerrar
*adelantar pagina
*atrasar pagina
*arrancar hojas

bien, pues nuetro cuaderno es un objeto, y cada una de las cosas que mencionamos que tenia el cuaderno son sus atributos y las cosas que puedo hacer copn el cuaderno son sus metodos.

Listo ahi ya esta nuestro 'objeto' cuaderno, veamoslo en una especia de pseudocodigo:
Código: Text
  1.  
  2. cuaderno
  3. {
  4.   int numPag;
  5.   string imgPortada;
  6.   string colorHojas;
  7.   string estiloHojas;
  8.   string estiloAgrupaHojas;
  9.   long  precio;
  10.   long calidadPapell;
  11.   string marca;
  12.  
  13.   Abrir()
  14.   {
  15.      ...
  16.   }
  17.  
  18.   Cerrar()
  19.   {
  20.      ...
  21.   }
  22.  
  23.   AdelantarPagina()
  24.   {
  25.      ...
  26.   }
  27.  
  28.   AtrasarPagina()
  29.   {
  30.      ...
  31.   }
  32.  
  33.   ArrancarHojas()
  34.   {
  35.      ...
  36.   }
  37.  
  38. }
  39.  
  40.  

Listo.. ahora fijate que nuestro cuaderno expresado asi aplica para cualquier cuaderno no para uno solo asi que lo que hicimos realmente aplica para representar cualquier cuaderno asiq eu es una plantilla.. en POO una plantilla se llama clase.
Código: Text
  1.  
  2. class cuaderno
  3. {
  4.   ...
  5.   ...
  6. }
  7.  
  8.  

Bueno me salteare mucho tema....
Para el compilador saber cual es la clase que comienza un programa (en modo consola) requiere diferenciarla... bien él la diferencia buscando la clase que con tiene al metodo Main, asi que la clase que tenga al main es el inicio del programa.

Código: Text
  1.  
  2. public class miProg
  3. {
  4.    public static void Main()
  5.   {
  6.      
  7.   }
  8. }
  9.  
  10.  
Tienes tu programa y vas a usar lo que hiciste en cuaderno para manejar tres cuadernos
Código: Text
  1.  
  2. public class miProg
  3. {
  4.    public static void Main()
  5.   {
  6.       int numCuads;
  7.       cuaderno c1 = new cuaderno();
  8.       cuaderno c2 = new cuaderno();
  9.       cuaderno c3 = new cuaderno();
  10.   }
  11. }
  12.  
  13.  

Que paso ahi?
bueno una clase es una plantilla a travez de la cual puedes crear diferentes objetos (el siguiente ejemplo aplica más para C# que para otros lenguajes) si escribes

int i

estas diciendo que i es un objeto y que este debe ser construido de acuerdo a la clase (plantilla) int, asi que i es un objeto tipo int. (en otros lenguajes no se puede concebir int como una clase sino simplemente es un tipo de dato)

asi que si hacemos
cuaderno c1;

estos creando un objeto c1 y este debe ser creado de acuerdo a la plantilla (clase) cuaderno.

A medida que profundices en POO te daras cuenta prque int i no requiere hacer
int i= new int i;

por el momento solo te digo que
cuaderno c1 = new cuaderno();

es decir realmente c1 es un contenedor de objetos del tipo cuaderno, pero aun no contiene ningun objeto, asi que

 c1 = new cuaderno();

es colocar  un objeto cuaderno dentro de su contenedor c1.

Ahora usemos lo que hay dentro de cada cuaderno:
Código: Text
  1.  
  2. public class miProg
  3. {
  4.    public static void Main()
  5.   {
  6.       int numCuads;
  7.       cuaderno c1 = new cuaderno();
  8.       cuaderno c2 = new cuaderno();
  9.       cuaderno c3 = new cuaderno();
  10.  
  11.       c1.numPag = 100;
  12.       c1.precio    = 10.000;
  13.       c2.numPag = 100;
  14.       c2.precio    = 10.000;
  15.       c3.numPag = 100;
  16.       c3.precio    = 10.000;
  17.  
  18.       c1.Abrir();
  19.       c2.Abrir();
  20.       c3.Abrir();
  21.   }
  22. }
  23.  
  24.  

En fin espero que esto haya ayuda, para mas informacion te recomiendo los tutoriales con los que yo aprendi C# y mejoré notablemente en POO.

http://www.elguille.info/NET/cursoCSharpErik/index.htm

Y este que es nuevo pero se ve muy bueno.

http://www.elguille.info/colabora/NET2005/...rado/Indice.htm

 :hola:

3313
La taberna del BIT / Re: Hoy Aprendi Algo Nuevo
« en: Sábado 18 de Junio de 2005, 16:29 »
Si, y eso me hace reir más  :devil:

3314
La taberna del BIT / Re: Hoy Aprendi Algo Nuevo
« en: Sábado 18 de Junio de 2005, 02:10 »
Para aquellos pocos que al igual que RadicalEd no entendieron la broma les explico:

No es que sea tan tonto como para creer que la ley de Murphy la ideo Eddie Murphy, lo dije solo a manera de broma  :hola:

3315
Sobre los Foros de SoloCodigo / Re: Foro Crystal Reports!
« en: Sábado 18 de Junio de 2005, 00:00 »
por primera vez en mucho tiempo... apoyo una inciativa de nuevo foro

3316
La taberna del BIT / Re: Fotos de Usuarios del Foro
« en: Viernes 17 de Junio de 2005, 17:18 »
que buenas fotos sergio, ella es tu esposa?

3317
DirectX / Re: Propuesta Para Hacer Un Tutorial
« en: Viernes 17 de Junio de 2005, 14:39 »
suena interesante, si quieres hacerlo es muy bienvenido!!!  :smartass:

3318
Visual C++ / Re: Publico Mi Tutorial Visual C++ 2005
« en: Viernes 17 de Junio de 2005, 14:36 »

3319
C/C++ / Re: Assembly
« en: Viernes 17 de Junio de 2005, 14:26 »
si mal no recuerdo en .NET va
__asm
es decir con doble '_'

por otro lado esa sintaxis como bien lo has dicho no es generica, en compiladores como el DJGPP no funciona.

3320
Visual C++ / Re: AtenciÓn: C++ Y Registro De Windows
« en: Viernes 17 de Junio de 2005, 14:24 »
por eso
has lo de las carpteas buscas en el registro lo que necesitas y luegao usas en tu programa de c o c++ rutinas de la api de windows para manejar el registro, la verdad es sencillisimo.

3321
C/C++ / Re: Un Verdadero Reto
« en: Viernes 17 de Junio de 2005, 14:22 »
bueno nunca he usado opengl,
pero como ya lo he mencionado me pasrece muy facil de hacer aun sin usar opengl sino simplemente usando rutinas de consola, o hacerlo con directX o allegro seria = de facil...


La verdad no le veo ninguna dificulad, me podrias decir en donde esta la dificultad? o la dificultad radica en hacerlo usando openGL?

3322
La taberna del BIT / Re: Hoy Aprendi Algo Nuevo
« en: Viernes 17 de Junio de 2005, 06:14 »
hoy a pendi que Eddie Murphie es el mejor abogado del mundo!!


Definitivamente su famosa ley (La ley de Murphie ) nunca falla.

estaba luciendo con mi proyecto ante un profesor y fallo algo que jamas habia fallado  :(  :blink:


3323
La taberna del BIT / Re: Lenguaje De Programación Favorito
« en: Jueves 16 de Junio de 2005, 23:45 »
me encanta el C++ pero nunca lo aprendi totalmente, el C si lo domino muy bien...
si me ponen a escojer no elijo ninguno pues ambos ya son obsoletos para las necesidades modernas y que se vienen a futuro, asi que me quedo con otro de la famila ...

con C#.NET es una herramienta muy potente no lo manejo del todo, solo se hacer aplicaciones por consola, formas, multimedia, XML, hilos y archivos pero manejo muy bien POO y eso me ayuda a aprender muy bien y muy facil cada cosa que he necesitado de ese lenguaje,  de las cosas que quiero apernder muy pronto estan:
  • Web Services</li>
  • Servicios para windows</li>
  • Conexiones a bd: bueno es muy facil ya lo he visto pero nunca he necesitado hacer ninguna</li>
  • Paginas web dinamicas desde C#</li>
  • Componentes de conexion  y manejo de datos</li>
ASi que bueno:

Mis favoritos segun importancia profesional y de paso coinciden segun su futuro:
C#, C++, c

Mis favoritos segun importancia academica:
C, C#, C++

Mis antifavoritos:
*Java (Ver foro de C#)
*Visual Basic, pues ya paso a la historia aunque la gran mayoria no lo acepta, pero lo cierto es que ya todos deberian migrar a .Net, sino a C#.NET entonces a VB.Net.

Nunca he visto a Visual Basic como un lenguaje de programación sino más como una buena herramienta para hacer soluciones de software, para los que no lo sepan mis comienzos fueron con VB y sabia muchisimo y me movia muy bien en el.. hasta que conoci java... el cual me hizo abandonar VB y finalmente abandone java pues no me gustaban muchas cosas (ver foro de C#) luego hice un receso de POO y me dedique a volverme muy bueno en C y tiempo despues me adentre en C#.Net.

Actualmente sigo con C#.Net y estory aprendiendo C++ al mismo nivel que comento Serghio es decir el C++ puro mas no las MFC ni ATL ni nninguna de esas cosas.

3324
C/C++ / Re: Un Verdadero Reto
« en: Jueves 16 de Junio de 2005, 22:23 »
me parece de mucho valor lo que haces, lastima que cobres... :whistling:

ahora lo que si te he pedido es que nos digas que es lo que quieres, es decir
entiendo:
una letra en pantalla y moverla con el teclado. es eso? al menos eso es lo que se entiende.

Es muy probable que ese chavito nos supere a todo pues debe ser un niño indigo, casi que seguro.

3325
C/C++ / Re: Un Verdadero Reto
« en: Jueves 16 de Junio de 2005, 21:24 »
La respuesta a que... a esto?
Citar
Hacer que las flachas del teclado muevan una letra de un lado a otro por la pantalla como si estuviera esquivando algo es muy facil con el SDL... El reto es hacer lo mismo sin usar esta libreria

no he podido ver el programa que tu dices ya hecho... muestranoslo aca.
como novas a pasar fuentes entonces participare pero entregare solo ejecutables.

Sinos das la infromacion que hace falta aceptaremos el reto, entonces explica con detalles en que consiste y veremos si lo podemos hacer...

Por cierto la seccion 4 dice programacion en java y este foro de retros es de retos en C /C++

Páginas: 1 ... 131 132 [133] 134 135 ... 231