• Sábado 20 de Abril de 2024, 16:34

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

Páginas: [1] 2
1
C/C++ / Re: Funcionamiento Extraño De C En Linux Debian
« en: Jueves 24 de Marzo de 2005, 18:34 »
Hola:

soyyo el problema esta en que tu programa NO debe usar esos scanf(), ya que scanf es para ler UN caracter o un CADENA sin espacio....

Sustituye asi:

Código: Text
  1. printf( "TEXTO: " );
  2. gets( var ); fflush( stdout );
  3.  
  4.  

y podras visualizar TODO lo introducido :D

en caso que queras usar a fuerzas SCANF... pues hazlo asi:

Código: Text
  1. printf( "TEXTO: " );
  2. scanf( "%s", var );
  3.  

NOTA que no use el &.. ;)

byeeeeeeeeeee

2
C/C++ / Re: ¿como Pasar De String A Entero?
« en: Jueves 24 de Marzo de 2005, 18:28 »
Hola:

Vaya es tan facil :D....

Código: Text
  1.  
  2. int num;
  3. char xnum[10];
  4.  
  5. printf( " Escribe Numero: " );
  6. gets( xnum );
  7. num= (char) xnum;
  8.  
  9. printf( "Ahora pasamos el valor a num y es: %i", num );
  10. getchar();
  11. return 0;
  12. }
  13.  

byeeeeeeeee

3
C/C++ / Re: Listas En C++ Y Asignacion Dinamica Memoria
« en: Domingo 27 de Febrero de 2005, 08:52 »
Hola:

marrgm -- AQUI -- encontraras un ejemplo mio de Arbol Binario de Busqueda.

Para aprender mas sobre el tema de: listas, pilas, arboles, grafos, etc...

Te recomiendo: http://c.conclase.com y http://www.elrincondelc.com

byeeeeeeeeee

4
MySQL / Re: Problemas Con Mysql En Php !!!!
« en: Viernes 31 de Diciembre de 2004, 08:31 »
Hola:

Si Avalon, ya pude solucionar el problema para conectar, pero de echo la forma la hice PARECIDA, ya que la persona del LINK AL POST usaba la base de datos: mysql y modificaba datos de ahi dentro, lo que ami me resultaba error, ya que despues NO podia ingresar a mi Base de Datos con user: root y pass: mipass.... asi que tenia que RE-Instalar  MySQL...

Y bueno lo hice asi: entre a MySQL mysql -h localhost -u root -p, y ya dentro escribi este codigo:

Código: Text
  1. SET PASSWORD FOR user@localhost = OLD_PASSWORD('password');
  2.  

Y listo, pude conectar  a la Base de Datos y escojer mi tabla sin problemas...

Ahora el problema es que me muestra dos warnings, nose porke, .... el codigo se supone esta correcto, aqui estan los WANINGS:

Código: Text
  1. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\web\index.php on line 23
  2.  
  3. Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in c:\web\index.php on line 28
  4.  

Aqui esta el codigo...

Código: Text
  1. <?php
  2.   include ( "conectar.php" );
  3.   $link=conectar();
  4.   $consulta= mysql_query( "select * from tradudark", $link );
  5.   ?>
  6.   <table cellspacing="2" cellpadding="2" border="0">
  7.   <?php
  8.   while( $filas= mysql_fetch_array( $consulta ) )
  9.     {
  10.     print ( "<td>Nick: ". $filas["nick"]. "</td><td>Email: ". $filas["email"]. "</td><tr>" );
  11.     print( "<td colspan=2>". $filas["mensaje"]. "<td><tr>" );
  12.     }
  13.   mysql_free_result( $filas );
  14.   mysql_close( $link );
  15.   ?>
  16.   </table>
  17.  

Disculpen las molestias y gracias de antemano...

byeee

5
C/C++ / [Código Fuente] Bien, pero espero que la v2.0 este mejor :D
« en: Viernes 31 de Diciembre de 2004, 08:24 »
Hola:

Espero que en la v2.0 ya le pongas lo que es COMER MAS FICHAS, osea porke si se cierra el juego, y los dos presionan P ( paso ), pues el juego se da por terminado.....

De todos modos esta muy bien....  

Chido !!  byeeeeeeee

6
MySQL / Re: Problemas Con Mysql En Php !!!!
« en: Miércoles 29 de Diciembre de 2004, 04:44 »
Hola:

Sin mas que hacer, chece la info que me da la funcion:  phpinfo(); y note algo curioso en la parte de MySQL...

Chequen ESTA...

ayudaaa !! :kicking:

byeee

7
PHP / Re: Problema Al Conectar Con Mysql Server 4.1
« en: Miércoles 29 de Diciembre de 2004, 04:35 »
Hola:

Sin mas que hacer, chece la info que me da la funcion:  phpinfo(); y note algo curioso en la parte de MySQL...

Chequen ESTA...

ayudaaa !! :kicking:

byeee

8
MySQL / Re: Problemas Con Mysql En Php !!!!
« en: Miércoles 29 de Diciembre de 2004, 04:07 »
Hola:

Avalon el link a ese post creo que se parece pero NO... ya que el que puso ese post soluciono el problema corrigiendo una linea o lineas de codigo, osea de echo el mismo dice: " fue error mio " ....

Pero mi problema es conectando via HTTP hacia mi Base de Datos en MySQL... de echo uso este codigo simple y me tira: No se puede conectar a la Base de Datos.....

Código: Text
  1. <?php
  2. function conectar()
  3.   {
  4.   if( !($link= @mysql_connect( "localhost", "root", "diabliyo14" ) ) )
  5.     {
  6.     print( "<br><u><b>No se puede conectar a la Base de Datos.</b></u><br>" );
  7.     exit();
  8.     }
  9.   if ( !( mysql_select_db( "tradudark", $link ) ) )
  10.     {
  11.     print( "<br><u><b>No se puede seleccionar la base de datos.</b></u><br>" );
  12.     exit();
  13.     }
  14.   return $link;
  15.   }
  16. ?>
  17.  

Bueno espero que me puedan ayudar !!

byeee

9
PHP / Re: Problema Al Conectar Con Mysql Server 4.1
« en: Miércoles 29 de Diciembre de 2004, 01:07 »
Hola:

Informix porfavor checa mi post..

http://foros.solocodigo.com/index.php?showtopic=12821

A mi me sucede lo mismo, pero es algo mas basico y no encuentor solucion !!

Gracias de antemano

byeeeee

10
MySQL / Re: Problemas Con Mysql En Php !!!!
« en: Martes 28 de Diciembre de 2004, 08:27 »
Hola:

He solucionado el problema, ahora si compila sin dar ERRORES ni WARNINGS, solo que ahi un problema, porke diablos no me muestra los mensajes que ya estan en la base de datos ????.....

Bueno para resolver el problema tuve que poner el simbolo @ al inicia de cada funcion de MySQL....

Bueno les voy a postear el codigo para ver si me pueden ayudar a ver porke NO me muestra mis datos almacenados en la basde de datos...

Nota: mi Base de datos se llama:  tradudark_db  y mi tabla se llama:  td_inicia   y ahi tengo 3 campos que son: nick, email y mensaje....

Código: Text
  1. <html>
  2.   <head>
  3.   <title>Aprendiendo PHP</title>
  4.   </head>
  5.  
  6.   <body>
  7.   <center>
  8.   <form action="insertar.php" method="POST" name="comentarios">
  9.   <table cellpadding="5" cellspacing="10" border="0">
  10.   <td>Nick: </td><td><input type="text" size="30" name="txtnick"></td><tr>
  11.   <td>E-Mail: </td><td><input type="text" size="30" name="txtemail"></td><tr>
  12.   <td colspan="2">Comentario:<br><textarea rows="10" cols="60" name="txtcomentario"></textarea></td><tr>
  13.   <td colspan="2" align="center"><input type="submit" value="Enviar"></td>
  14.   </table>
  15.   </form>
  16.   </center>
  17.   <p align="center"><b>MESAJES HASTA AHORA</b></p>
  18.   <?php
  19.   $server= "localhost";
  20.   $user= "root";
  21.   $pass= "mipass";
  22.   $base= "tradudark_db";
  23.  
  24.   $id= @mysql_connect( $server, $user, $pass );
  25.   @mysql_select_db( $base, $id );
  26.   $consulta= 'select nick, email, mensaje from td_incia;';
  27.   $id_consulta= @mysql_query( $consulta, $id );
  28.   $nfilas= @mysql_num_arrow( $id_consulta );
  29.   ?>
  30.   <center>
  31.   <table cellspacing="2" cellpadding="2" border="0">
  32.   <?php
  33.   for( $i=0; $i<$nfilas; $i++ )
  34.     {
  35.     $resp= @mysql_fetch_array( $id_consulta );
  36.     print( "<tr><td>Nick: ". $resp["nick"]. "</td>" );
  37.     print( "<td>Email: ". $resp["email"]. "</td><tr>" );
  38.     print( "<td colspan=2>". $resp["mensaje"]. "</td><tr>" );
  39.     }
  40.   ?>
  41.   </table>
  42.   </center>
  43.   </body>
  44. </html>
  45.  

Gracias de antemano !!

byeeee

11
MySQL / Problemas Con Mysql En Php !!!!
« en: Lunes 27 de Diciembre de 2004, 21:54 »
Hola:

Soy nuevo aun, asi que he echo mi primer aplicacion que es un tipo LIBRO DE COMENTARIOS... se que no esta perfecto ni nada, que no esta ocultado lo que NO se debe de ver ( pass y basedd ), pero quiero primero verque mis codigos compilen y jalen bien, despues buscare el mejoramiento mas avanzado...  Por ahora me trabe aqui en mi LIBRO DE COMENTARIOS... nose porke...chequen mi codigo..

Código: Text
  1. <html>
  2.   <head>
  3.   <title>Aprendiendo PHP</title>
  4.   </head>
  5.  
  6.   <body>
  7.   <center>
  8.   <form action="insertar.php" method="POST" name="comentarios">
  9.     <table cellpadding="5" cellspacing="10" border="0">
  10.     <td>Nick: </td><td><input type="text" size="30" name="txtnick"></td><tr>
  11.     <td>E-Mail: </td><td><input type="text" size="30" name="txtemail"></td><tr>
  12.     <td colspan="2">Comentario:<br><textarea rows="10" cols="60" name="txtcomentario"></textarea></td><tr>
  13.     <td colspan="2" align="center"><input type="submit" value="Enviar"></td>
  14.     </table>
  15.   </form>
  16.   </center>
  17.   <p align="center"><b>MESAJES HASTA AHORA</b></p>
  18.   <?php
  19.     $server= "localhost";
  20.     $user= "root";
  21.     $pass= "mipass";
  22.     $base= "td_inicia";
  23.     $id= mysql_connect( $server, $user, $pass );  <------------ War 23
  24.     mysql_select_db( $base, $id ); <------------ War 24
  25.     $consulta= 'select nick, email, mensaje from td_inicia;';
  26.     $id_consulta= mysql_query( $consulta, $id ); <------------ War 26
  27.     $nfilas= mysql_num_rows( $id_consulta ); <------------ War 27
  28.   ?>
  29.   <center>
  30.   <table cellpadding="4" cellspacing="3" border="0" bgcolor="#7BA9E8">
  31.   <?php
  32.     for( $i=0; $i<$nfilas; $i++ )
  33.       {
  34.       $respuesta= mysql_fetch_array( $id_consulta );
  35.       print( "<tr>" );
  36.       print( "<td>Nick: ". $respuesta['nick']. "</td>" );
  37.       print( "<td>email: ". $respuesta['email']. "</td>" );
  38.       print( "<tr><td colspan=2>". $respuesta['mensaje']. "</td>" );
  39.       }
  40.   ?>
  41.   </table>
  42.   </center>
  43.   </body>
  44. </html>
  45.  

Me marca estos Warnings ( ya estan marcados en el codigo de arriba ):

Código: Text
  1. Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in c:\web\index.php on line 23
  2.  
  3. Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in c:\web\index.php on line 24
  4.  
  5. Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in c:\web\index.php on line 26
  6.  
  7. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\web\index.php on line 27
  8.  
  9.  

Segun me han dicho que el problema principal es el WAR que marca la linea 23, una vez se resuelva ese, los demas desapareceran...  El problema es que nose como solucionarlo, segun la sintaxis de Warning 23 es:

"el Cliente MySQL no puede soportar la autentificacion de los protocoles requeridos por el servidor, consiferese actualizar MySQL "...

NOTA: uso:  MySQL v4.1.7, Apache v1.3.33 y PHP v4.3.9

Gracias de antemano...

byeeeee

12
GNU/Linux / Indesiso Ayuda !!!
« en: Miércoles 28 de Julio de 2004, 09:34 »
Hola:

Tengo varios años usando Windows y pues es muy comodo y lo mas notable es que los programas que usamos pues funcionan bajo Windows ( hasta los de la universidad ), pero pues he visto que Windows es muy inestable, de repente funciona perfectamente 3 o 4 meses y despues por arte de magia comeinza a alentarse, a pendejear por completo el S.O --.... y vaya que el registro lo mantenemos limpio de programas, troyanos o virus que se esten cargando en el systema.....osea digamos solo cargamos como 4 procesos aproximadamente.

Aparte en el Task Manager Mantenemos solo ejecutando el: explorer.exe ...que biene siendo el escritorio...osea Uso de la PC 0%   TODO PERFECTO....pero por arte de magia el sistema hace unos cambio y toma desiciones muuy raras que pues nos da la desventaja....

Me he bajado de hace varios meses: Suse Linux, Mandrake Linux, Lindows, Knopix, Red Hat. Pero tengo muchas dudas aun, las cuales NO estan en ninguno de los POST principales de FAQs y demas..... son que:

Uso mucho estos programas:

-Virtual Dub (para editar videos)
-Smart Ripper ó DVD Decript (rippear DVDs)
-DVD2AVI (combertir los VOBs a AVI)
-Turbo C, Turbo C++ v4.5win, minGW, etc, et... (compiladores de C)
-Virtual Machine, Java SDK, Java Builder, BlueJ (herramientas indispensables y compilador de Java).
-Block de Notas, Fireworks (para paginas web)
-TASM ó MASM (compilador de ASM)
-Mi Tarjeta de Video ATI RADEON ALL IN WONDER para jugar y capturar videos de la TV.
-Juegos: FIFA2004, Medal of Honor, Grand Teft Auto 3.
-Easy cD & DVD Creator ( ufff.....estos los uso chingos, ya que bajo mucho software y juegos dle eMule...)
-el eMule (peor bueno, he leido que existe para  Linux...de este no ahi pex..)
-CloneCD e ISOBuster (extraer y crear imagenes, hacer copias de CDs)
-PowerDVD (ver pelis DVD y VCD en mi PC)
-Word (pero existe StarOffice...no ahi pex)
-WinZip y WinRar (puff existen chingos de archivos en la red comprimidos con estos programas....diriamos la MAYORIA)
-MSN Messenger
-FlashGet (acelerador y gestor de Descargas)

Pues quisiera saber si podria usar mis programas (creo que no ¬¬ )....peor existen algun software que los remplase ???...

Por este motivo prefiero quedarme con windows y le pienso para instalar alguna de las versiones de Linux,,,,,,,

Porfavor ayudenme..... Windows Me tiene hasta la madre, pero pues que le hago  :(....

byeeee

13
C/C++ / Re: Grafos!!!!!!!
« en: Jueves 10 de Junio de 2004, 07:46 »
Hola:

Bueno es un Foro de Dudas o de Jugar a la Papa Caliente ???...  ¡¡ Ya dejen de pelear !!   :kicking:  :lightsabre:  :blink:  :angry:

Ahi te va una exlicadina mas mejor que la anterior :D

Un grafo es un conjunto de nodos unidos entre si, no hay un inicio NI un fin, solo posibles caminos para llegar a determinado lugar....

Los Grafos se pueden hacer en forma de Matrizes de Adyacencia o por medio de Listas.... La forma que ami se me facilita mas, es en forma de Listas....  

Para formar un grafo debes tener: un PAR DE NODOS ( A y B ) los cuales llamaremos Vertices, y al unirlos ya sea de A --> B o de B --> A...a dicha union se le llama Enlaze...

Por lo tanto la estrcutura seria asi ( claro, es al gusto :D ):

Código: Text
  1. #define N 20
  2.  
  3. struct grafo
  4.           {
  5.           char letra;
  6.           char v[N];
  7.           struct grafo *sig;
  8.           }*raiz;
  9.  

Bueno aqui hariamos una lista enlazada de los Vertices ( nodos ), despues en la seccion Enlazes, el usuario los Enlaza... por ejemplo: el nodo: A, lo enlaza a: B, C, D, y E....entonces accedes al nodo A y en el array de cadena v[N], los agregas, asi de este modo iras creando un array de cadena de los vertices a los que se une el vertice A......

Aqui ahi DOS cosas mas: la lista esta LIMITADA, ya que #define N 20 indica que son Maximo 20 vertices ( nodos )..... Otra y ultima, debe inicializar al array   v[N]...

Código: Text
  1. for( i=0; i<N; i++ ) raiz->v[i]='\0';
  2.  


Si quieres mas sobre Matrizes de Adyasencia, entra AQUI
Espero haberte explicado bien...

byeee

14
XHTML / Ayuda En Html !!!
« en: Jueves 10 de Junio de 2004, 07:43 »
Hola:

Estoy repasando un tuto y me he puesto a mi mismo una pruebilla y pues me he quedado atascado----

Quiero hacer una web conformada por 4 partes o tablas:

Cabezera ( aqui el Titulo )
Tabla Izquierna ( aqui el Menu )
Tabla Central ( aqui las Noticias )
Tabla Derecha ( aqui los Links o Encuestas )

Hice un codigo, pero no me queda bien, ya que si agrando al TABLA, las celdas quedan en medio :(...

Ayuda porfas..

Código: Text
  1. <html>
  2.   <head>
  3.   <title>------ Mi Web -------</title>
  4.  
  5.   <script lenguage="javascript">
  6.   <!--
  7.   window.status=( "Mi Web" );
  8.   //-->
  9.   </script>
  10.   </head>
  11.  
  12.   <body bgcolor="#000000" text="#FFFFFF">
  13.   <table border="1" align="center" cellpadding="4" cellspacing="5" height="25%" width="80%">
  14.   <td align="center">TITULO DEL WEB</td>
  15.   </table>
  16.   <p align="center">
  17.   <p align="center"><marquee align="middle" scrolldelay="150" loop="infinite" direction="left" width="60%"><font size="3" color="#898989" face="OCR A Extended"><b>----> TraduDark v2.0 <---- Encuentra Todo sobre: Hacking, Cracking, Juegos, Parches, Traducciones, Programacion, Tutoriales, Trucos, Anime...Todo xD...   by Diabliyo</b></marquee>
  18.   <p align="center">
  19.   <table align="center" border="1" height="20%"width="80%" cellspacing="5">
  20.   </td><td align="center" width="21%">
  21.   <table align="center" border="1" width="97%">
  22.     <th align="center">MENUS</th>
  23.   </table>
  24.   </td><td align="center" width="55%">
  25.   <table align="center" border="1" width="99%">
  26.     <th align="center">NOTICIAS</th>
  27.   </table>
  28.   </td><td align="right" width="21%">
  29.   <table align="center" border="1" width="97%">
  30.     <th align="center">LINKS</th>
  31.   </table>
  32.   </td></table>
  33.  
  34.   </table>
  35.   <p align="center">
  36.   </body>
  37. </html>
  38.  

15
C/C++ / Re: Grafos!!!!!!!
« en: Lunes 7 de Junio de 2004, 06:33 »
Hola:

AQUI seria bueno que leyeras este tuto.

aqui te dejo al estructura de como se hace el Grafo por medio de: Listas

Código: Text
  1. struct grafo
  2.           {
  3.           int dato;
  4.           int vertices[N];
  5.           struct grafo *sig;
  6.           }*graf;
  7.  

Es como dice 5erg10, solo que CLARO...cada quien tiene su forma de pensar y hacer las cosas...asi que puedes tratar con esta estructura o pensarle de otra forma...

byeeeeeee

16
C/C++ / Re: Grafos
« en: Jueves 3 de Junio de 2004, 08:29 »
Hola:

AQUI...

byeeeee

17
C/C++ / Re: Problemas Para Usar El While En C
« en: Domingo 23 de Mayo de 2004, 06:23 »
Hola:

Como recomendacion especifica tambien el error que teda...NO SOLAMENTE ki que quieras que haga...

El programa segun veo SIEMPRE escribe un fichero....  Debes de poner despues de WHILE el dato: fwrite(&d, sizeof(DATOSALUMNO), 1, ficbin);... ya que si te da una edad de 4, 5, 6.....N..... entonces se REPETIRA, hasta que nos de una edad de: 0, 1, 2,, entonces parara y escribira el dato en el fichero...

byeeeeeeee

18
C/C++ / Re: Aprender
« en: Miércoles 19 de Mayo de 2004, 08:13 »
Hola:

[C++ BorlFJ

Que complicado compa esa web...:(...


Pepelu

Aprende primero C hasta Estructuras, despues puedes empezar C++ y llevarte aprendiendo C y C++ juntos....veras que facil te va a ir ;)...


Para aprender C... Aqui

Para aprender C++-....  Aqui...

byeeeeeee

19
C/C++ / Re: Ayuda Porfa!!!
« en: Sábado 1 de Mayo de 2004, 07:48 »
Hola:

Como tip..seria bueno que lo hicieras con RECURSION, tambien funciona y mucho mejor :D..

byeee

20
C/C++ / Re: Ayuda Porfa!!!
« en: Viernes 30 de Abril de 2004, 07:21 »
Hola:

Bueno tenias VARIOS errorsillos.... El primero era que llamabas al CICLO FOR, y solo corria una ves... ya que dentro pusiste el RETUNR, esto asi que corriera una sola ves y regresara el VALOR...se supoe que RETUR lo debes poner al FINAL..para que haga el proceso del factorial y devuelva el resultado guardado en la variable "f".

Y tu segundo error fue que NO supiste implementar el acomodamiento para poder hacer el factorial, porque se supone que el factorial de un numero se saca asi:

Ejemplo de un Numero: 5

5x4x3x2x1= 120

Para hacerlo tienes que tener la VARIABLE qu lleva el numero ( n ), y dos variables que te ayudaran ( i, f ).

Segun como corregi tu codigo, esta es la logica: i va valer el numero enviado menos uno ( i=n-1...si enviamos un 5, entonces i valdra 4. ) asi de este modolo DECREMENTAREMOS hasta que sea mayor que 0 (osea 1) y por ultimo la variable "f" la igualasmos al numero (f= n), su valor cambiara segun la multiplicacion ( f= f*i;)

Código: Text
  1. #include <stdio.h>
  2.  
  3. int factorial(int n);
  4.  
  5. int main()
  6.   {
  7.   int fac, n;
  8.  
  9.   printf("escriba el numero\n");
  10.   scanf("%d",&n);
  11.   fac=factorial(n);
  12.   printf("el factorial es %d \n",fac);
  13.   return 0;
  14.   }
  15.  
  16. int factorial(int n)
  17.   {
  18.   int i, f=n;
  19.  
  20.   for(i=n-1;i>0;i--)
  21.     {
  22.     f=f*i;
  23.     }
  24.   return f;
  25.   }
  26.  


byeeeeeeeeee

21
C/C++ / Re: Ayuda Con Grafos !!!
« en: Viernes 16 de Abril de 2004, 08:04 »
Hola:

Oyes NeRo ya tengo ese tuto de GRAFOS desde hace varios dias, pero aun no me queda claro la forma de Matriz Adyacente.... lo estoy haciendo como: Lista Adyancente.... Como vas tu ??.... Porfas ayudame o mejor aun, mi MSN es:  darkdiabliyo@hotmail.com  estaria bueno platicar sobre el tema, a ver que sacamos :D...

Te dejo un pedasito de mi codigo, a ver qu ete parece, segun YO va bien :D..

Código: Text
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <ctype.h>
  4. #include <stdlib.h>
  5.  
  6. #define N 50
  7.  
  8. struct grafo
  9.   {
  10.   int dato;
  11.   struct grafo *grafo[N];
  12.   struct grafo *sig;
  13.   }*Pgrafo;
  14.  
  15.  
  16.  
  17.  
  18. /*PROTOTIPOS*/
  19. int vacio( struct grafo *mat );
  20. struct grafo *insertar( struct grafo *nodo, struct grafo *Agrafo, int num );
  21. int enlazarfull( struct grafo *nodo );
  22. void menu_enlazes( void );
  23.  
  24.  
  25.  
  26.  
  27.  
  28. int vacio( struct grafo *mat )
  29.   {
  30.   int cont=1;
  31.  
  32.   while( mat )
  33.     {
  34.     if( mat->dato )
  35.       {
  36.       cont++;
  37.       mat= mat->sig;
  38.       }
  39.     }
  40.   return cont;
  41.   }
  42.  
  43.  
  44. struct grafo *insertar( struct grafo *nodo, struct grafo *Agrafo, int num )
  45.   {
  46.   if( !Agrafo )
  47.     {
  48.     Agrafo= (struct grafo*) malloc( sizeof( struct grafo ) );
  49.     Agrafo->sig= NULL;
  50.     Agrafo->dato= num;
  51.     if( !nodo ) return Agrafo;
  52.     else nodo->sig= Agrafo;
  53.     return Agrafo;
  54.     }
  55.   insertar( Agrafo, Agrafo->sig, num );
  56.   return nodo;
  57.   }
  58.  
  59. int enlazarfull( struct grafo *nodo )
  60.   {
  61.   int i;
  62.  
  63.   if( !nodo->sig ) return 0;
  64.   for( i=0; i<vacio( nodo ); i++ )
  65.     nodo->grafo[i]= NULL;
  66.   /*aqui falta.... Aqui voy apenas :D*/
  67.   return 1;
  68.   }
  69.  
  70. /*MENUS DE GRAFOS*/
  71.  
  72. void menu_enlazes( void )
  73.   {
  74.   char _op='A';
  75.   int arista;
  76.  
  77.   while( _op!='3' )
  78.     {
  79.     clrscr();
  80.     printf( "1-Enlazar Nodos ya enlazado." );
  81.     printf( "\n2-Enlazar Nodo\(s\) Nuevo\(s\)." );
  82.     printf( "\n3-Salir." );
  83.     printf( "\n\n:: " );
  84.     _op= toupper( getch() );
  85.     switch( _op )
  86.       {
  87.       case '1':
  88.         break;
  89.       case '2':
  90.         arista= enlazarfull( Pgrafo );
  91.         if( !arista ) printf( "\n\nImposible... Solo existe un nodo." );
  92.                   else printf( "\n\nListo !!!" );
  93.         getch();
  94.         break;
  95.       }
  96.     }
  97.   }
  98.  
  99.  
  100.  
  101. int main()
  102.   {
  103.   char _op='A';
  104.   int val;
  105.  
  106.   while( _op!='S' )
  107.     {
  108.     clrscr();
  109.     printf( "-Nuevo Nodo." );
  110.     printf( "\n-Enlazes." );
  111.     printf( "\n-Ver Grafo." );
  112.     printf( "\n-Salir." );
  113.     printf( "\n\n:: " );
  114.     _op= toupper( getch() );
  115.     switch( _op )
  116.       {
  117.       case 'N':
  118.         printf( "\n\nNumero: " );
  119.         scanf( "%i", &val );
  120.         Pgrafo= insertar( Pgrafo, Pgrafo, val );
  121.         break;
  122.       case 'E':
  123.         menu_enlazes();
  124.         break;
  125.       case 'V':
  126.         break;
  127.       }
  128.     }
  129.   printf( "\n\nPulsa para salir..." );
  130.   getch();
  131.   return 0;
  132.   }
  133.  
  134.  

byeee

22
C/C++ / Re: Ayuda Con Grafos !!!
« en: Lunes 12 de Abril de 2004, 08:20 »
Hola:

Pues ya intente y hasta busque en google y NADA... tal ves esta DOWN esa pagina... pero bueno, alguien mas que pueda ayudar ???.....

Ya SINO saben de tutos, porfas pegar algun codigo para estudiar o nose, es que la neta me urge y NO encuentro nada sobre el tema :(..

byeee

23
C/C++ / Re: Ayuda Con Avl !!
« en: Sábado 10 de Abril de 2004, 22:16 »
Hola:

Aqui les dejo el codigo de c.conclase del Arbol AVL. (el codigo solo incluye: la estructura, funcion INSERTAR, funcion RSD, RSI, RDD, RDI, funcion Borrar).

Al igual dentro dle ZIP biene MI codigo.(incluye TODO).


Ya que si no se les hes comodo estar leyendo el codigo, ya que no explico la funcion del puntero  *padre  que va dentro del codigo de C.CONCLASE, pues qui tienen los 2 codigo...

Gracias de Antemano a quien me quiera yudar !!

byeeee

24
C/C++ / Ayuda Con Avl !!
« en: Sábado 10 de Abril de 2004, 22:04 »
Hola:

Bueno tengo dificultades para realizar mi Arbol AVL, pero aqui les va la explicacion lo mas clara y entendible que puedo sobre el problema que tengo :D

NOTA:: aparte de MI codigo, me apoyo en el codigo que esta en el tuto de c.conclase.com (ya que es el unico sitio donde encontre sobre este tema) (tambien les pego los codigos del c.conclase)

El AVL o Equilibrio del Arbol solo realiza en las funciones de INSERTAR y BORRAR un NODO, lo demas sigue normal como un Arbol Binario de Busqueda (ABB), al igual cuento con 5 funciones:

-Equilibrar
-RSD (Rotacion Simple a la Derecha)
-RSI (Rotacion Simpel a la Izquierda)
-RDD (Rotacion Doble a la Derecha)
-RDI (Rotacion Doble a la Izquierda)

Aqui esta el codigo de MI funcion de INSERTAR.

Código: Text
  1. struct avl
  2.   {
  3.   int dato;
  4.   struct avl *izq;
  5.   struct avl *der;
  6.   }*raiz;
  7.  
  8. enum {IZQUIERDO, DERECHO};
  9.  
  10. /*Insertar*/
  11. struct avl *insertar( struct avl *raiz2, struct avl *hoja, int num )
  12.    {
  13.    if( !hoja )
  14.       {
  15.       hoja= (struct avl *) malloc( sizeof( struct avl ) );
  16.       hoja->izq= NULL;
  17.       hoja->der= NULL;
  18.       hoja->dato= num;
  19.       hoja->FE= 0;
  20.       if( !raiz ) return hoja;
  21.       else if( num<raiz2->dato )
  22.          {
  23.          aux= raiz;
  24.          raiz2->izq= hoja;
  25.          equilibrar( aux, raiz2, IZQUIERDA, VERDADERO );
  26.          }
  27.       else
  28.          {
  29.          aux= raiz;
  30.          raiz2->der= hoja;
  31.          equilibrar( aux, raiz2, DERECHA, VERDADERO );
  32.         }
  33.       return hoja;
  34.       }
  35.    else if( num<hoja->dato )
  36.       insertar( hoja, hoja->izq, num );
  37.    else
  38.       insertar( hoja, hoja->der, num );
  39.    return raiz;
  40.    }
  41.  

Bueno en  MI codigo ya esta TODO bien, ya que al insertar un NODO, se manda llamar la funcion EQUILIBRAR y dentro de ella se llevane stos valores que significan:

AUX= nodo que apunta al INICIO del Arbol (osea al primer NODO insertado).
RAIZ2=  este puntero LIGADO o APUNTA la rama IZQ o DEr hacia el nodo INSERTADO. (ya sea IZQ o DER).
DERECHA ó IZQUIERDA= solo indica la posicion del nodo que se inserto, para saber hacia DONDE haremos al rotacion.
VERDADERO= parametro para recorrer TODO el arbol dentro de la funcion de EQUILIBRAR. Mientras sea VERDADERO estara recorriendo el Arbol Completo y rotandolo.

--------------------------------------------------------------------------------------

Ahora aqui esta el codigo de C.CONCLASE de la funcion EQUILIBRAR !!!...

Código: Text
  1. /* Equilibrar árbol AVL partiendo del nodo nuevo */
  2. void Equilibrar(Arbol *a, pNodo nodo, int rama, int nuevo)
  3. {
  4.   int salir = FALSE;
  5.  
  6.   /* Recorrer camino inverso actualizando valores de FE: */
  7.   while(nodo && !salir) {
  8.      if(nuevo)
  9.         if(rama == IZQUIERDO) nodo->FE--; /* Depende de si añadimos ... */
  10.         else                  nodo->FE++;
  11.      else
  12.         if(rama == IZQUIERDO) nodo->FE++; /* ... o borramos */
  13.         else                  nodo->FE--;
  14.      if(nodo->FE == 0) salir = TRUE; /* La altura de las rama que
  15.                                         empieza en nodo no ha variado,
  16.                                         salir de Equilibrar */
  17.      else if(nodo->FE == -2) { /* Rotar a derechas y salir: */
  18.         if(nodo->izquierdo->FE == 1) RDD(a, nodo); /* Rotación doble  */
  19.         else RSD(a, nodo);                         /* Rotación simple */
  20.         salir = TRUE;
  21.      }
  22.      else if(nodo->FE == 2) {  /* Rotar a izquierdas y salir: */
  23.         if(nodo->derecho->FE == -1) RDI(a, nodo); /* Rotación doble  */
  24.         else RSI(a, nodo);                        /* Rotación simple */
  25.         salir = TRUE;
  26.      }
  27.      if(nodo->padre)   /*AHI QUE INTERPRETAR ESTO EN MI CODIGO*/
  28.         if(nodo->padre->derecho == nodo) rama = DERECHO; else rama = IZQUIERDO;
  29.      nodo = nodo->padre; /* Calcular FE, siguiente nodo del camino. */
  30.   }
  31. }
  32.  
  33.  

Ahora aqui esta MI codigo de la funcion EQUILIBRAR !!!

Código: Text
  1. /*Funciones de Equilibrio*/
  2.  
  3. void equilibrar( struct avl *raiz, struct avl *nodo, int rama, int nuevo )
  4.    {
  5.    int salir= FALSO;
  6.  
  7.    while( nodo && !salir )
  8.       {
  9.       if( nuevo )
  10.          {
  11.          if( rama == IZQUIERDA ) nodo->FE--;
  12.          else nodo->FE++;
  13.          }
  14.       else
  15.          {
  16.          if( rama == IZQUIERDA ) nodo->FE++;
  17.          else nodo->FE--;
  18.          }
  19.       if( nodo->FE == 0 ) salir= VERDADERO;
  20.       else if( nodo->FE == -2 )
  21.          {
  22.          if( nodo->izq->FE == 1 ) RDD( raiz, nodo );
  23.          else RSD( raiz, nodo );
  24.          salir= VERDADERO;
  25.          }
  26.       else if( nodo->FE == 2 )
  27.          {
  28.          if( nodo->der->FE == -1 ) RDI( raiz, nodo );
  29.          else RSI( raiz, nodo );
  30.          salir= VERDADERO;
  31.          }
  32.       /*falta AQUI*/
  33.       }
  34.    }
  35.  
  36.  

Como ven AQUI esta mi problema, ya que NO se como interpretar el pedazo de codigo que va en la parte donde esta mi comenario: /*falta AQUI*/. El Pedazo de codigo que tengo que interpretar esta en la funcion de Equilibrar de C.CONCLASE, puesta mas arriba de mi codigo y señalando con el comentario: /*AHI QUE INTERPRETAR ESTO EN MI CODIGO*/.

Bueno NO es que sea webon o flojo, pero ya me duele la cabeza de tanto pensar, y pue sla verdad me urge ya que me falta poco para ENTRAR de vacaciones (osea a mis clases normales), y pues entrando SON MIS EXAMENES, y pues este tema lo tengo atrazado :(....

Quien se tome la molestia porfavor....muchas gracias !!

Acepto comentarios, pero porfavor ayudenme !!

byeeeeeeeeeee

25
C/C++ / Ayuda Con Grafos !!!
« en: Sábado 10 de Abril de 2004, 21:48 »
Hola:

Alguien sabe de un buen TUTO de GRAFOS ???.... Ya que por as que busco NO encuentro rastro alguno de un buen tuto que traiga ejemplos y teoria  :(...

Porfas me urge, si alguien tiene algo sobre el tema porfavor paseme el dato ;)..

byeeeeeeee

Páginas: [1] 2