elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Temas
Páginas: 1 2 [3] 4
21  Seguridad Informática / Materiales y equipos / Ayuda con Router D-LINK 300 en: 10 Agosto 2010, 22:22 pm
Hola tengo un problema con este router, lo que me sucedio es que lo desconecte y solo deje la conexión de internet de  cable directa a la pc.

El problema me sucedio cuando lo quise conectar de nuevo me aperece el icono que se acaba de conectar a internet , pero no me pernite ni conectarme desde mi pc y ni de mi laptop

aqui les dejo una imagen:


http://www.freeimagehosting.net/image.php?796b73ca03.jpg


Y cuando dejo directo solo la conexión de cable si conecta perfectamente , que podra ser , si alguien sabe le estaria muy agradecido.

22  Programación / Programación C/C++ / hey ayuda como guardo en un txt... en: 25 Junio 2010, 01:35 am
mi codigo es el siguiente:

Código:

void CODIGO(void)
{
      FILE *archivo;

     int i;
     char c;
     printf("El codigo en orden alfabetico:");
     for(i=1; i<=MAX_N_S; i++)
if(frecuencia[i]!=0)
  {
     c=inicio_reconstruccion(i);
     if(c==' ')
printf("\n\tEspacio");
     else
       if(c=='\n')
  printf("\n\tLinea");
       else
    printf("\n\t%c",c);
if(codigo[i]==NULL)
   printf("\n\aError\a\n");
else
      printf("\t==>%s",codigo[i]);
  }
getch();
printf("\n\n\n\n");
printf("\nEl arbol de huffman quedo codificado a:\n\n");

archivo=fopen("huffman.txt","r");

for(i=0; entrada[i]!='\0';i++)
   {

       printf("%s",codigo[ inicio_mapa(entrada[i]) ] );
       fwrite(codigo[inicio_mapa(entrada[i])], sizeof(codigo),1,archivo);

   }
   fclose(archivo);
   
}



mi  consulta es que cuando quiero guardar el codigo en un txt solo me crea el archivo huffman.txt pero no me guarda nada , alguien si sabe como me lo podria guardar  le estari muy agradecido...
23  Programación / Programación C/C++ / Ayuda con el modo grafico de turco c++ en: 22 Junio 2010, 01:48 am
Hola estoy creando un funcion que me represente en menu de carga siguiente:


http://hosting.deimagenes.com/?v=carga.jpg

bueno cuando me carga que me maximiza la pantalla del compilador de la siguiente manera:


http://hosting.deimagenes.com/?v=tcmaximiza.jpg

bueno la consulta es como despues de representar ese menu de carga como minimizar la pantalla de turbo c a su tamaño original


http://hosting.deimagenes.com/?v=tcminimiza.jpg

El problema es que cuando voy visualizando las lista me sale demasiado grande el texto y no me muestra los primero registros.

Alguien sabe como minimizar esa pantalla sin la intervencion de ALT+Enter.
me refiereo desde el compilador alguna intruccion en c que haga esto .... porfa les estare muy agradecido.
24  Programación / Programación C/C++ / ayuda con lista doble en: 14 Junio 2010, 06:11 am
bueno tengo que hacer una lista doble (inventario) que contenga un unico codigo , nombre , precio  y cantidad , por ejemplo:

codigo : 12345
nombre: cafe
precio  :$ 10.00
cantidad: 10

corrijame si voy mal

Código:

typedef struct lista_d
{
char codigo[10];
char nombre[10];
float precio;
         int cantidad;
struct lista_d *prox;
struct lista_d *ant;
}   lista_d;
     lista_d *p;

lista_d *CreaNodo (char x)
{
lista_d *p = NULL;
p = (lista_d *) malloc(sizeof(lista_d));
if (p != NULL)
{
p->info = x;
p->prox = p->ant  =NULL;
}
return p;
}
void insertar(lista_d** cabeza, dato)
{
lista_d *nuevo;
nuevo=CreaNodo(dato);
nuevo->adelante=*cabeza;
nuevo->atras=NULL;
if(*cabeza!=NULL)
  {
  (*cabeza)->atras=nuevo;
         *cabeza=nuevo;
  }
}
void main()
{
lista_d *cabeza;
cabecera=NULL;
}

otra duda para actualizar una lista doble por ejemplo  si quiereo actuzalizar que en vez de que sean 10 articulos si no que 15 con el mismi codigo y producto solo se los sumo o lo aplico la funcion de eliminacion por ejemplo:

inventario no actulizado:

codigo : 12345
nombre: cafe
precio  :$ 10.00
cantidad: 10

inventario  actulizado:

codigo : 12345
nombre: cafe
precio  :$ 10.00
cantidad: 15







25  Programación / Programación C/C++ / tengo una duda en: 7 Junio 2010, 05:19 am
bueno me ha llamado la atencion el temas de arboles en especial los "arboles binarios y los arboles AVL"

Bueno yo se que un arbol binario  es una estructura de datos en la cual cada nodo siempre tiene un hijo izquierdo y un hijo derecho.
Un arbol AVL están siempre equilibrados de tal modo que para todos los nodos, la altura de la rama izquierda no difiere en más de una unidad de la altura de la rama derecha.

bueno mi duda que tengo es " porque muchos programadores aplican a los arboles binarios las operaciones de los arboles AVL"  por ejemplo

por ejemplo: las operaciones de un arbol binario son (mas basicas)
insertar un dato
eliminar un dato
buscar un dato

la de los arboles AVL
las rotaciones:  rotacion a la derecha
                       rotacion a la izquierda

bueno corrijamen si estoy en lo equivocado y si no saquenme de la duda:

yo creo que se aplican  los arboles AVL en los arboles binario para lograr un equilbrio o balanceo y  una mayor eficiencia con respecto a las busquedas debido a que el arbol queda ordenado logrando una eficiencia de ( Log n ) equilibrando

porfavor si alguien me puede aclarar esta duda, le agradeceria.

                       
26  Programación / Programación C/C++ / una consulta en: 5 Junio 2010, 02:23 am
estoy trabajando con punteros

Código:
value = (*cabeza_ptr)->dato
temporal =*cabeza_ptr

bueno mi consulta es como se representa es pseudocogico esta intruccion * , ->

yo lo hice asi no se si estara bien

Código:
value = cabeza: dato
temporal : cabeza_ptr
27  Programación / Programación C/C++ / Corrijanme si me equivoco en: 4 Junio 2010, 01:27 am
Hola mi programa tiene la siguiente estrcutura

Código:
struct node
{
   int info;
   struct node *next;
};

typedef struct node *nodePtr;


bueno lo estoy pasando a pseudocodigo no se si lo  hice bien si no haganmelo saber

Código:

estructura nodo
{
     var info
     estructura node → next
}
tipo_de_dato  estructura node → nodePtr



28  Programación / Programación C/C++ / alguien tiene este libro o sabe donde conseguirlo en: 30 Mayo 2010, 07:30 am
es un excelente libro de programacion si alguien lo tiene o sabe el link de descarga le estaria muy agradecido:

TITULO: C. Algoritmos, programación y estructura de datos. Serie Schaum

AUTOR/ES: Joyanes Aguilar, Luis; Castillo Sanz, Andrés;Sánchez García, Lucas & Zahonero Martínez, Ignacio

AÑO: 2005

EDICION: 1ª

IDIOMA: Castellano
29  Programación / Programación C/C++ / ayuda en validacion en: 25 Mayo 2010, 02:30 am
bueno estoy en la desarollando un sistema de invetario lo que no se como puedo hacer es hacer la validacion de texto por ejemplo yo hice este programa que valida la entrada de 5 caracteres de una cadena y no permite mas caracteres exactamente  5, pero el problema me surge que el programa lo estoy trabajano en linux no se si habra otra forma de hacer esto porque en linux.
En linux  da error por la libreria conio... les agradeceri si hay alguna forma de validar cadena ya sea con un ciclos for , while les estaria muy agradecido


por ejemplo si el usuario quiere difitar lo siguiente
  codigo -> elhacker
el programa solo le escribira "elhac" y aunque el usuario digite no se le deplegara mas caracactere solo exactamente 5, eso es lo que hace este programa. pero lo malo que se vale mucho de la libreria conio y el problema que lo desarollo en linux

vean
Código:
//****  este programa lo desarolle en turbo c++ 3.0 ***** ///
// permite la entrada solo de 5 caracteres ideales para validacion de cadenas

#include <stdio.h>
#include <conio.h>
int main(void)
{
    char cadena[6];       // contiene el array char
    char *puntero;         // es el puntero donde se almacena el array char
    clrscr();
    cadena[0] = 6;       
    printf("Digite el codigo:\n");
    puntero = cgets(cadena);
    fflush(stdin);
putchar(*puntero);
putchar('\n');

    getch();
    return 0;
 }

30  Programación / Programación C/C++ / guardar y crear un archivo en turbo c++ en: 17 Mayo 2010, 08:39 am
bueno es un diccionario con arboles binarios,  la estructuras de mi programa son las siguiente

Código:
struct nodos
{
char ingles[50];
char español[50];
struct nodos *der;
struct nodos *izq;
int siguiente;
};
      typedef struct nodos Arbol;
      typedef Arbol *ARBOL;
      int listo;
     char in[50],es[50];

la consulta es como guardo todo el diccionario en un .txt

yo lo intente haci

Código:
void cargar() 
{
   nodos Arbol info;
   FILE *fp;

   fp=fopen("arbol.txt","r");
   if(fp==NULL)
   {
      printf("No se puede abrir el archivo\n");
      return;
   }

   while(!feof(fp))
   {
      if(fread(&info, sizeof(nodos Arbol), 1, fp)!=1) break;
       agregar(&raiz);
   }

   fclose(fp);
}

void guardar()
{
    nodos Arbol info;
   FILE *fp;

   fp=fopen("arbol.txt","w");
   if(fp==NULL)
   {
      printf("No se puede abrir el archivo\n");
      return;
   }


pero no me sirve y me da como 7 errores no se a que se debera alguien si sabe me podria decir en que equivoco

errores:
undefined symbol nodos
statement mising
expected
if statementm missing
undefine symbol raiz
declaration syntax error

no se que sera

*******************************************************************
bueno aca el codigo completo del programa si alguien puede poner esa opcion de guardar  en un txt se lo agradeceria :

Código:
#include "stdio.h"
#include "stdlib.h"
#include "conio.h"
#include "string.h"
#include "iostream.h"
//-------------------------------------------------------------------------------------
// Estructura del Nodo
//-------------------------------------------------------------------------------------
struct nodos{
char ingles[50];
char espanol[50];
struct nodos *der;
struct nodos *izq;
int Fe;
};
//-------------------------------------------------------------------------------------
// --------------------
//-------------------------------------------------------------------------------------
typedef struct nodos Arbol;
typedef Arbol *ARBOL;
int listo;
char in[50],es[50];
//-------------------------------------------------------------------------------------
// Protótipos de las funciones
//-------------------------------------------------------------------------------------
void menu();
void menu_agregar();
void menu_ingles();
void menu_espanol();
void menu_borrar();
void menu_listar();
void agregar(ARBOL  *nodoarb);
void buscar_ingles(ARBOL nodoarb);
void buscar_espanol(ARBOL nodoarb);
void listar(ARBOL nodoarb);
void rotacionddsimple(ARBOL *nodoarb);
void rotaciondidoble(ARBOL *nodoarb);
void rotaciondd2(ARBOL *nodoarb);
void rotacionii2(ARBOL *nodoarb);
void rotacioniisimple(ARBOL *nodoarb);
void rotacioniddoble(ARBOL *nodoarb);
void menor(ARBOL nodoarb);
void actualizarbi(ARBOL *nodoarb, int *ban);
void actualizarbd(ARBOL *nodoarb, int *ban);
void eliminar(ARBOL *nodoarb, int *ban);
void borrar(ARBOL *nodoarb , int *ban);
//-------------------------------------------------------------------------------------
//     PROGRAMA PRINCIPAL
//-------------------------------------------------------------------------------------
void main()
{
char opc='1';
int ban=1;
ARBOL raiz=NULL;
do
{
menu();
cin>>opc;
switch(opc){
case '1':
menu_agregar();
    cout<<"Introduzca Palabra en Ingles : ";
cin>>in;
cout<<"Introduzca Palabra en Espanol : ";
cin>>es;
agregar(&raiz);
    break;
case '2':
menu_borrar();
cout<<"Que Palabra en Ingles desea Borrar? : ";
cin>>in;
borrar(&raiz,&ban);
cout<<"Elemento Borrado!";
    break;
case '3':
    menu_ingles();
cout<<"Que Palabra en Ingles desea Buscar? : ";
cin>>in;
listo=0;
buscar_ingles(raiz);
if (listo==0)
cout<<"Elemento no encontrado!";
getch();
listo=0;
break;
   
case '4':
menu_espanol();
cout<<"Que Palabra en Espanol desea Buscar? : ";
cin>>es;
listo=0;
buscar_espanol(raiz);
if (listo==0)
cout<<"Elemento no encontrado!";
getch();
listo=0;
break;
case '5':
menu_listar();
listar(raiz);
getch();
    break;
}
} while (opc !='6');
}
//-------------------------------------------------------------------------------------
//     Funcion Menu
//-------------------------------------------------------------------------------------
void menu()
{
system("cls");
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"               TRADUCTOR INGLES - ESPANOL / ESPANOL INGLES                      "<<endl;
cout<<"                                                                                "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                  1. Agregar palabras al diccionario                            "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                  2. Borrar palabras del diccionario                            "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                  3. Consultar Palabra en Ingles                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                  4. Consultar Palabra en Espanol                               "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                  5. Listar Palabras                                            "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                  6. Salir                                                      "<<endl;
cout<<"                                                                                "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"  Digite su Opcion?????                                                         "<<endl;

}

//-------------------------------------------------------------------------------------
//     Funcion Menu Agregar
//-------------------------------------------------------------------------------------
void menu_agregar()
{
system("cls");
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                      AGREGAR PALABRAS AL TRADUCTOR                             "<<endl;
cout<<"                                                                                "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
}

//-------------------------------------------------------------------------------------
//     Funcion Menu Buscar Ingles
//-------------------------------------------------------------------------------------
void menu_ingles()
{
system("cls");
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                         BUSCAR PALABRA EN INGLES                               "<<endl;
cout<<"                                                                                "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
}

//-------------------------------------------------------------------------------------
//     Funcion Menu Buscar Espanol
//-------------------------------------------------------------------------------------
void menu_espanol()
{
system("cls");
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                        BUSCAR PALABRA EN ESPANOL                               "<<endl;
cout<<"                                                                                "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
}

//-------------------------------------------------------------------------------------
//     Funcion Menu Borrar
//-------------------------------------------------------------------------------------
void menu_borrar()
{
system("cls");
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                      BORRAR PALABRA DEL DICCIONARIO                            "<<endl;
cout<<"                                                                                "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
cout<<"                                                                                "<<endl;
}
//-------------------------------------------------------------------------------------
//     Funcion Menu Listar
//-------------------------------------------------------------------------------------
void menu_listar()
{
system("cls");
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
cout<<"                      LISTAR PALABRAS DEL TRADUCTOR                             "<<endl;
cout<<"                                                                                "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"                                                                                "<<endl;
}

//-------------------------------------------------------------------------------------
//      Funcion Agregar palabras al Diccionario
//-------------------------------------------------------------------------------------

void agregar(ARBOL  *nodoarb)
{

int det;
if (*nodoarb == NULL){
*nodoarb = new(Arbol);
if (*nodoarb != NULL){
strcpy((*nodoarb)->ingles,in);
strcpy((*nodoarb)->espanol,es);
(*nodoarb)->der=NULL;
(*nodoarb)->izq=NULL;
}
else{
            system("cls");
cout<<"No hay memoria suficiente!";
}
}
else
{
det=strcmp(in,(*nodoarb)->ingles);

if (det < 0)
agregar (&((*nodoarb)->izq));
else
if (det > 0)
agregar (&((*nodoarb)->der));
else
{
system("cls");
cout<<"¡¡¡ Dato duplicado !!!";
getch();
system("cls");
}
}
}

//-------------------------------------------------------------------------------------
//     Funcion Buscar Ingles
//-------------------------------------------------------------------------------------

void buscar_ingles(ARBOL nodoarb)
{
if (nodoarb != NULL){
buscar_ingles(nodoarb->izq);
if (strcmp(in,nodoarb->ingles)==0)
{
cout<<endl;
cout<<endl;
cout<<endl;
cout<<"                        "<<nodoarb->ingles<<" -> "<<nodoarb->espanol<<endl;
listo=1;
return;
}
buscar_ingles(nodoarb->der);
}
}

//-------------------------------------------------------------------------------------
//     Funcion Buscar Ingles
//-------------------------------------------------------------------------------------

void buscar_espanol(ARBOL nodoarb)
{
if (nodoarb != NULL){
buscar_espanol(nodoarb->izq);
if (strcmp(es,nodoarb->espanol)==0)
{
cout<<endl;
cout<<endl;
cout<<endl;
cout<<"                        "<<nodoarb->espanol<<" -> "<<nodoarb->ingles<<endl;
listo=1;
return;
}
buscar_espanol(nodoarb->der);
}
}
//-------------------------------------------------------------------------------------
//     Funcion listar Palabras
//-------------------------------------------------------------------------------------


void listar(ARBOL nodoarb)
{
if (nodoarb != NULL){
listar(nodoarb->izq);
cout<<"                            "<<nodoarb->ingles<<" -> "<<nodoarb->espanol<<endl;
listar(nodoarb->der);
}
}

//-------------------------------------------------------------------------------------
//     Funcion rotacionddsimple
//-------------------------------------------------------------------------------------

void rotacionddsimple(ARBOL *nodoarb)
{
  ARBOL nda=NULL;
nda=(*nodoarb)->der;
(*nodoarb)->der=nda->izq;
nda->izq=(*nodoarb);
nda->Fe=0;
(*nodoarb)->Fe=0;
}

//-------------------------------------------------------------------------------------
//     Funcion rotaciondidoble
//-------------------------------------------------------------------------------------

void rotaciondidoble(ARBOL *nodoarb)
{
  ARBOL nda1=NULL, nda2=NULL;
nda1=(*nodoarb)->der;
nda2=nda1->der;

nda1->izq=nda2->der;
nda2->der=nda1;
(*nodoarb)->der=nda2->izq;
nda2->izq=(*nodoarb);

if (nda2->Fe == 1)
(*nodoarb)->Fe=-1;
else
(*nodoarb)->Fe=0;
if (nda2->Fe == -1)
(*nodoarb)->Fe=1;
else
(*nodoarb)->Fe=0;

nda2->Fe=0;
(*nodoarb)=nda2;
}

//-------------------------------------------------------------------------------------
//     Funcion rotaciondd2
//-------------------------------------------------------------------------------------

void rotaciondd2(ARBOL *nodoarb)
{
  ARBOL nda=NULL;
nda=(*nodoarb)->der;
(*nodoarb)->der=nda->izq;
nda->izq=(*nodoarb);
nda->Fe=-1;
(*nodoarb)->Fe=1;
(*nodoarb)=nda;
}

//-------------------------------------------------------------------------------------
//     Funcion rotacionii2
//-------------------------------------------------------------------------------------

void rotacionii2(ARBOL *nodoarb)
{
  ARBOL nda=NULL;
nda=(*nodoarb)->izq;
(*nodoarb)->izq=nda->der;
nda->der=(*nodoarb);
nda->Fe=1;
(*nodoarb)->Fe=-1;
(*nodoarb)=nda;
}

//-------------------------------------------------------------------------------------
//     Funcion rotacionsimple
//-------------------------------------------------------------------------------------


void rotacioniisimple(ARBOL *nodoarb)
{
  ARBOL nda=NULL;
nda=(*nodoarb)->izq;
(*nodoarb)->izq=nda->der;
nda->der=(*nodoarb);
nda->Fe=0;
(*nodoarb)->Fe=0;
        *nodoarb=nda;
}

//-------------------------------------------------------------------------------------
//     Funcion rotacioniddoble
//-------------------------------------------------------------------------------------

void rotacioniddoble(ARBOL *nodoarb)
{
  ARBOL nda1=NULL, nda2=NULL;

nda1=(*nodoarb)->izq;
nda2=nda1->der;
nda1->der=nda2->izq;
nda2->izq=nda1;

(*nodoarb)->izq=nda2->der;
nda2->der=(*nodoarb);

if (nda2->Fe == 1)
nda1->Fe=-1;
else
nda1->Fe=0;
if (nda2->Fe == -1)
(*nodoarb)->Fe=1;
else
(*nodoarb)->Fe=0;

nda2->Fe=0;
(*nodoarb)=nda2;
}

//-------------------------------------------------------------------------------------
//     Funcion Menor
//-------------------------------------------------------------------------------------

void menor(ARBOL nodoarb)
{
if (nodoarb->izq == NULL)
{
strcpy(in,nodoarb->ingles);
strcpy(es,nodoarb->espanol);
}
else
menor(nodoarb->izq);
}

//-------------------------------------------------------------------------------------
//     Funcion Actualizarbi
//-------------------------------------------------------------------------------------

void actualizarbi(ARBOL *nodoarb, int *ban)
{
switch((*nodoarb)->Fe){
case -1:
(*nodoarb)->Fe=0;
break;
case 0:
(*nodoarb)->Fe=1;
*ban=0;
break;
case 1:
switch((*nodoarb)->der->Fe){
case 1:
rotacionddsimple(&(*nodoarb));
break;
case -1:
rotaciondidoble(&(*nodoarb));
break;
case 0:
rotaciondd2(&(*nodoarb));
*ban=0;
break;

}
break;
}
}
//-------------------------------------------------------------------------------------
//     Funcion Actualizarbd
//-------------------------------------------------------------------------------------


void actualizarbd(ARBOL *nodoarb, int *ban)
{
switch((*nodoarb)->Fe){
case 1:
(*nodoarb)->Fe=0;
break;
case 0:
(*nodoarb)->Fe=-1;
*ban=0;
break;
case -1:
switch((*nodoarb)->izq->Fe){
case -1:
rotacioniisimple(&(*nodoarb));
break;
case 1:
rotacioniddoble(&(*nodoarb));
break;
case 0:
rotacionii2(&(*nodoarb));
*ban=0;
break;

}
break;
}
}

//-------------------------------------------------------------------------------------
//     Funcion Eliminar
//-------------------------------------------------------------------------------------

void eliminar(ARBOL *nodoarb, int *ban)
{
 ARBOL aux=NULL;

if ((*nodoarb)->izq == NULL){
aux=*nodoarb;
*nodoarb=(*nodoarb)->der;
free(aux);
*ban=1;
}
else{
if ((*nodoarb)->der == NULL){
aux=*nodoarb;
*nodoarb=(*nodoarb)->izq;
free(aux);
*ban=1;
}
else{
menor((*nodoarb)->der);
borrar(&(*nodoarb)->der,&(*ban));
if (*ban)
actualizarbd(&(*nodoarb),&(*ban));
}
}
}


//-------------------------------------------------------------------------------------
//     Funcion Borrar
//-------------------------------------------------------------------------------------


void borrar(ARBOL *nodoarb , int *ban)
{
if (nodoarb == NULL)
*ban=0;
else
if (strcmp((*nodoarb)->ingles,in)==0)
eliminar(&(*nodoarb),&(*ban));

else
if (strcmp((*nodoarb)->ingles,in) > 0 ){
borrar(&(*nodoarb)->izq,&(*ban));
if (*ban)
actualizarbi(&(*nodoarb),&(*ban));
}
else{
borrar(&(*nodoarb)->der,&(*ban));
if (*ban)
actualizarbd(&(*nodoarb),&(*ban));

}
}

//-------------------------------------------------------------------------------------
//                FIN
//-------------------------------------------------------------------------------------


Páginas: 1 2 [3] 4
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines