• Sábado 13 de Julio de 2024, 01:58

Autor Tema:  Re: POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡  (Leído 3008 veces)

tany666

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡
« en: Miércoles 6 de Marzo de 2002, 09:38 »
0
PoR FAVOR NECESITO AYUDA URGENTEMENTE,NECESITO UN PROGRAMA DE ESTRUCTURAS DINAMICAS CON UN MENU CON VENTANAS Y FUNCIONES EN C++,DONDE SE PUEDAN INTRODUCIR,ELIMINAR,MODIFICAR..DATOS,PORFAVOR ES URGENTE, MUCHISIMAS GRACIAS :(

borca

  • Miembro activo
  • **
  • Mensajes: 60
    • Ver Perfil
Re: POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡
« Respuesta #1 en: Miércoles 6 de Marzo de 2002, 10:50 »
0
Citar
PoR FAVOR NECESITO AYUDA URGENTEMENTE,NECESITO UN PROGRAMA DE ESTRUCTURAS DINAMICAS CON UN MENU CON VENTANAS Y FUNCIONES EN C++,DONDE SE PUEDAN INTRODUCIR,ELIMINAR,MODIFICAR..DATOS,PORFAVOR ES URGENTE, MUCHISIMAS GRACIAS :(

borca

  • Miembro activo
  • **
  • Mensajes: 60
    • Ver Perfil
Re: POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡
« Respuesta #2 en: Miércoles 6 de Marzo de 2002, 10:51 »
0

Zeus

  • Nuevo Miembro
  • *
  • Mensajes: 16
    • Ver Perfil
Re: POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡
« Respuesta #3 en: Miércoles 6 de Marzo de 2002, 10:52 »
0
Pretendes que te haban la tarea????
y no escribas con mayusculas ;)
Si te lo propones lo logras

borca

  • Miembro activo
  • **
  • Mensajes: 60
    • Ver Perfil
Re: POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡
« Respuesta #4 en: Miércoles 6 de Marzo de 2002, 10:53 »
0
si esto te puede servir mas bien como ejemplo y mirar como funcionan las listas...este ejemplo es de listas circulares
:


# ifndef PA_h
# define PA_h

#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>

#define TIPO int

typedef struct nodo
{
   TIPO info;
   struct nodo *enlace;
   struct nodo *enlace1;
}LISTA;



int menu(void);


void inserta_final(LISTA **ptr, char elemento);
void inserta_or(LISTA **ptr,LISTA **p, char elemento);
void orden(LISTA **ptr,LISTA **p);
void elim_ele_lista(LISTA **ptr);
void buscar_ele(LISTA **ptr,LISTA **p, char elemento);
void mostrar_elementos(LISTA **ptr,LISTA **p);




void inserta_final(LISTA **ptr,LISTA **p, char elemento)
{
   LISTA *p1, *p2,*aux;

   p1 = *ptr;
   if(p1 == NULL)
   {
      p1 = new(LISTA);
      if (p1 != NULL)
      {
         p1->info    = elemento;
         p1->enlace  = p1;
         p1->enlace1 = p1;

         *ptr = p1;
         *p   = p1;
      }
   }
   else
   {     aux=p1;

      while(p1->enlace != aux)
         p1 = p1->enlace;
      p2 = new(LISTA);
      if(p2 != NULL)
      {
         p2->info = elemento;
         p2->enlace = aux;
         p1->enlace = p2;
         p2->enlace1 = p1;
         aux->enlace1 =p2;
         *p = p2;
      }
   }
}


int menu(void)
{
   int car;
   clrscr();
   printf("n  opcion 1 insertar final elementos en la lista ");
   printf("n  opcion 2 sacar un elemento de la lista");
   printf("n  opcion 3 insertar ordenadamente");
   printf("n  opcion 4 ordenar inserci¢n");
   printf("n  opcion 5 buscar elemento");
   printf("n  opcion 6 mostrar elementos");
   printf("n  opcion 7 Exitn");
   do{
   car=getche();

   }while(car<49||car>55);
   return car;
}

void elim_ele_lista(LISTA **ptr,LISTA **p)
{
      LISTA *aux,*aux1,*aux2;

      aux=*ptr;

    if(aux!=NULL){
            if(aux->enlace!=aux){
            *ptr=aux->enlace;
            aux1=*ptr;
            aux1->enlace1=aux->enlace1;
            aux2=*p;
            aux2->enlace=aux1;
            printf("nnEl elemento eliminado es %c",aux->info);
               delete(aux);
            }

         else
            {
               printf("nnEl elemento eliminado es %c",aux->info);
             delete(aux);
             *ptr=NULL;
               *p=NULL;
             }
          }
          else

               printf("Lista vac¡a");



}

void inserta_or(LISTA **ptr,LISTA **p, char elemento)
{
   LISTA *p1, *p2,*aux,*aux1;

   p1 = *ptr;

   if(p1 == NULL)
   {
      p1 = new(LISTA);
      if (p1 != NULL)
      {
         p1->info    = elemento;
         p1->enlace  = p1;
         p1->enlace1 = p1;

         *ptr = p1;
         *p   = p1;
      }
   }
   else
   {     aux=p1;
   p2 = new(LISTA);


if(elemento<p1->info)

{ if(p1->enlace==aux)

   {
      *ptr=p2;
    p2->info=elemento;
    p2->enlace= p1;
    p2->enlace1=p1;
    p1->enlace =p2;
    p1->enlace1=p2; }

    else
      {
         *ptr=p2;
         p2->info=elemento;
         p2->enlace=p1;
         aux1=*p;
         aux1->enlace=p2;
         p2->enlace1=aux1;
         p1->enlace1=p2;
       }}

    else{

      while(p1->enlace != aux)
   {      aux1=p1->enlace;
      if((p1->info<elemento&&elemento<aux1->info)||
      (p1->info==elemento||elemento==aux1->info))
      break;
      else
         p1 = p1->enlace;

         }



      if(p1->enlace==aux) {
         p2->info = elemento;
         p2->enlace = aux;
         p1->enlace = p2;
         p2->enlace1 = p1;
         aux->enlace1 =p2;
         *p = p2;
         }
      else {
      p2->info=elemento;
      aux1=p1->enlace;
      p1->enlace=p2;
      p2->enlace1=p1;
      p2->enlace=aux1;
      aux1->enlace1=p2;
      }
      }}
      }




void orden(LISTA **ptr,LISTA **p)
{
   LISTA *x3,*p1, *p2,*aux,*aux1,*x,*x1=NULL,*i=NULL,*j=NULL,*m;
   char elemento;




   x=*ptr;
   x3=x;

   if(*ptr!=NULL)
   {

do{
      p1=x1;

    elemento=x->info;

      if(p1==NULL)

   {
    p1=new(LISTA);

    p1->info=elemento;
    p1->enlace=p1;
    p1->enlace1=p1;

    i=p1;
    j=p1;

    x1=p1;

    }


   else{

   p2=new(LISTA);

   p2->info=elemento;


if(elemento<p1->info)

{
   aux1=p1->enlace1;
   p2->enlace=p1;
   p1->enlace1=p2;
   p2->enlace1=aux1;
   aux1->enlace=p2;
   i=p2;
   x1=p2;
}


else{

   while(p1->enlace!=x1)

    {
    aux=p1->enlace;

if((elemento>p1->info&&elemento<aux->info)||(elemento==p1->info))
    break;

else
    p1=p1->enlace;


}

if(p1->enlace!=x1)

{
   p2->enlace=aux;
   p2->enlace1=p1;
   p1->enlace=p2;
   aux->enlace1=p2;

}

else
   if(p1->enlace==x1)
   {
   p2->enlace1=p1;
   p1->enlace=p2;
   p2->enlace=x1;
   x1->enlace1=p2;
   j=p2;
   }


}
}

m=x->enlace;

delete(x);

x=m;

}
while(x!=x3);

printf("Ordenaci¢n con ‚xito");

*ptr=i;
*p=j;


}
else


printf("Lista Vac¡a");


}
void buscar_ele(LISTA **ptr,LISTA **p,char elemento)
{
      LISTA *aux,*aux1;

      aux=*ptr;

      aux1=*p;

      aux1=aux1
      ->enlace;

    if(aux!=NULL){
      while(aux->enlace!=aux1&&aux->info!=elemento){
               aux=aux->enlace;
               }
          if(aux->info==elemento) {
            printf("nnEl elemento es %c , ubicado en la posici¢n %p ",aux->info,aux);

               }
          else
          printf("nnEl elemento no existe");
            }

          else

               printf("nnLista vac¡a");



}


void mostrar_elementos(LISTA **ptr,LISTA **p)
{
      LISTA *aux,*aux1,*aux2;

      aux=*ptr;
      aux1=*p;

      aux1=aux1->enlace;

    if(aux!=NULL){

    printf("Los elementos son:nn");
      while(aux->enlace!=aux1){
            printf("El elemento %c , est  ubicado en la posici¢n %p n",aux->info,aux);
               aux=aux->enlace;
               }

            printf("El elemento %c , est  ubicado en la posici¢n %p n",aux->info,aux);
            }
         else

               printf("nnLista vac¡a");



}


# endif:D

tany666

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡
« Respuesta #5 en: Jueves 7 de Marzo de 2002, 09:17 »
0
Citar
si esto te puede servir mas bien como ejemplo y mirar como funcionan las listas...este ejemplo es de listas circulares
:


# ifndef PA_h
# define PA_h

#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>

#define TIPO int

typedef struct nodo
{
   TIPO info;
   struct nodo *enlace;
   struct nodo *enlace1;
}LISTA;



int menu(void);


void inserta_final(LISTA **ptr, char elemento);
void inserta_or(LISTA **ptr,LISTA **p, char elemento);
void orden(LISTA **ptr,LISTA **p);
void elim_ele_lista(LISTA **ptr);
void buscar_ele(LISTA **ptr,LISTA **p, char elemento);
void mostrar_elementos(LISTA **ptr,LISTA **p);




void inserta_final(LISTA **ptr,LISTA **p, char elemento)
{
   LISTA *p1, *p2,*aux;

   p1 = *ptr;
   if(p1 == NULL)
   {
      p1 = new(LISTA);
      if (p1 != NULL)
      {
         p1->info    = elemento;
         p1->enlace  = p1;
         p1->enlace1 = p1;

         *ptr = p1;
         *p   = p1;
      }
   }
   else
   {     aux=p1;

      while(p1->enlace != aux)
         p1 = p1->enlace;
      p2 = new(LISTA);
      if(p2 != NULL)
      {
         p2->info = elemento;
         p2->enlace = aux;
         p1->enlace = p2;
         p2->enlace1 = p1;
         aux->enlace1 =p2;
         *p = p2;
      }
   }
}


int menu(void)
{
   int car;
   clrscr();
   printf("n  opcion 1 insertar final elementos en la lista ");
   printf("n  opcion 2 sacar un elemento de la lista");
   printf("n  opcion 3 insertar ordenadamente");
   printf("n  opcion 4 ordenar inserci¢n");
   printf("n  opcion 5 buscar elemento");
   printf("n  opcion 6 mostrar elementos");
   printf("n  opcion 7 Exitn");
   do{
   car=getche();

   }while(car<49||car>55);
   return car;
}

void elim_ele_lista(LISTA **ptr,LISTA **p)
{
      LISTA *aux,*aux1,*aux2;

      aux=*ptr;

    if(aux!=NULL){
            if(aux->enlace!=aux){
            *ptr=aux->enlace;
            aux1=*ptr;
            aux1->enlace1=aux->enlace1;
            aux2=*p;
            aux2->enlace=aux1;
            printf("nnEl elemento eliminado es %c",aux->info);
               delete(aux);
            }

         else
            {
               printf("nnEl elemento eliminado es %c",aux->info);
             delete(aux);
             *ptr=NULL;
               *p=NULL;
             }
          }
          else

               printf("Lista vac¡a");



}

void inserta_or(LISTA **ptr,LISTA **p, char elemento)
{
   LISTA *p1, *p2,*aux,*aux1;

   p1 = *ptr;

   if(p1 == NULL)
   {
      p1 = new(LISTA);
      if (p1 != NULL)
      {
         p1->info    = elemento;
         p1->enlace  = p1;
         p1->enlace1 = p1;

         *ptr = p1;
         *p   = p1;
      }
   }
   else
   {     aux=p1;
   p2 = new(LISTA);


if(elemento<p1->info)

{ if(p1->enlace==aux)

   {
      *ptr=p2;
    p2->info=elemento;
    p2->enlace= p1;
    p2->enlace1=p1;
    p1->enlace =p2;
    p1->enlace1=p2; }

    else
      {
         *ptr=p2;
         p2->info=elemento;
         p2->enlace=p1;
         aux1=*p;
         aux1->enlace=p2;
         p2->enlace1=aux1;
         p1->enlace1=p2;
       }}

    else{

      while(p1->enlace != aux)
   {      aux1=p1->enlace;
      if((p1->info<elemento&&elemento<aux1->info)||
      (p1->info==elemento||elemento==aux1->info))
      break;
      else
         p1 = p1->enlace;

         }



      if(p1->enlace==aux) {
         p2->info = elemento;
         p2->enlace = aux;
         p1->enlace = p2;
         p2->enlace1 = p1;
         aux->enlace1 =p2;
         *p = p2;
         }
      else {
      p2->info=elemento;
      aux1=p1->enlace;
      p1->enlace=p2;
      p2->enlace1=p1;
      p2->enlace=aux1;
      aux1->enlace1=p2;
      }
      }}
      }




void orden(LISTA **ptr,LISTA **p)
{
   LISTA *x3,*p1, *p2,*aux,*aux1,*x,*x1=NULL,*i=NULL,*j=NULL,*m;
   char elemento;




   x=*ptr;
   x3=x;

   if(*ptr!=NULL)
   {

do{
      p1=x1;

    elemento=x->info;

      if(p1==NULL)

   {
    p1=new(LISTA);

    p1->info=elemento;
    p1->enlace=p1;
    p1->enlace1=p1;

    i=p1;
    j=p1;

    x1=p1;

    }


   else{

   p2=new(LISTA);

   p2->info=elemento;


if(elemento<p1->info)

{
   aux1=p1->enlace1;
   p2->enlace=p1;
   p1->enlace1=p2;
   p2->enlace1=aux1;
   aux1->enlace=p2;
   i=p2;
   x1=p2;
}


else{

   while(p1->enlace!=x1)

    {
    aux=p1->enlace;

if((elemento>p1->info&&elemento<aux->info)||(elemento==p1->info))
    break;

else
    p1=p1->enlace;


}

if(p1->enlace!=x1)

{
   p2->enlace=aux;
   p2->enlace1=p1;
   p1->enlace=p2;
   aux->enlace1=p2;

}

else
   if(p1->enlace==x1)
   {
   p2->enlace1=p1;
   p1->enlace=p2;
   p2->enlace=x1;
   x1->enlace1=p2;
   j=p2;
   }


}
}

m=x->enlace;

delete(x);

x=m;

}
while(x!=x3);

printf("Ordenaci¢n con ‚xito");

*ptr=i;
*p=j;


}
else


printf("Lista Vac¡a");


}
void buscar_ele(LISTA **ptr,LISTA **p,char elemento)
{
      LISTA *aux,*aux1;

      aux=*ptr;

      aux1=*p;

      aux1=aux1
      ->enlace;

    if(aux!=NULL){
      while(aux->enlace!=aux1&&aux->info!=elemento){
               aux=aux->enlace;
               }
          if(aux->info==elemento) {
            printf("nnEl elemento es %c , ubicado en la posici¢n %p ",aux->info,aux);

               }
          else
          printf("nnEl elemento no existe");
            }

          else

               printf("nnLista vac¡a");



}


void mostrar_elementos(LISTA **ptr,LISTA **p)
{
      LISTA *aux,*aux1,*aux2;

      aux=*ptr;
      aux1=*p;

      aux1=aux1->enlace;

    if(aux!=NULL){

    printf("Los elementos son:nn");
      while(aux->enlace!=aux1){
            printf("El elemento %c , est  ubicado en la posici¢n %p n",aux->info,aux);
               aux=aux->enlace;
               }

            printf("El elemento %c , est  ubicado en la posici¢n %p n",aux->info,aux);
            }
         else

               printf("nnLista vac¡a");



}


# endif:D

tany666

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
POR FAVOR ES MUY IMPORTANTE¡¡¡¡¡¡¡¡¡¡¡¡
« Respuesta #6 en: Jueves 7 de Marzo de 2002, 09:18 »
0
BORCA muchisimas gracias por todo, pero en realidad no eran listas eran punteros a estructuras, pero bueno no pasa nada muchas gracias.
UN BESAZO MUAKKKKK:D:D:D:D