Fandom

Scratchpad

PLE:Unidad7Ejercicio06

215,994pages on
this wiki
Add New Page
Discuss this page0 Share

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

/*
programa:       Ejercicio06
Descipcion:     Lista enlazada. Inserta ordenadamente.
*/

#include<iostream.h>
#include<string.h>
#include<conio.h>

struct nodo{
        char nombre[20];
        char telefono[9];
        nodo *ps;
};

int main()
{
        nodo *raiz=NULL,*nuevo=NULL, *anterior;
        char continuar='s';
        char nom[20], tlf[9];

        while(continuar != 'n')
        {
                // Leemos el siguiente número
                cout << "\nIntroduce un nombre:";
                cin >> nom;
                cout << "\nIntroduce un telefono:";
                cin >> tlf;

                // creamos el nodo
                nuevo=new nodo;
                strcpy(nuevo->nombre,nom);
                strcpy(nuevo->telefono,tlf);

                // Buscamos el nodo anterior
                if(raiz==NULL || strcmp(raiz->nombre,nom) >= 0){
                        nuevo->ps = raiz;
                        raiz = nuevo;
                }else {
                        anterior = raiz;
                        while(anterior->ps != NULL && strcmp(anterior->ps->nombre,nom) < 0){
                                anterior = anterior->ps;
                        }
                        nuevo->ps = anterior->ps;
                        anterior->ps = nuevo;
                }
                cout << "¿Quiere continuar (s/n)?: ";
                cin >> continuar;
        }

        // imprimir lista
        nuevo=raiz;
        while(nuevo!=NULL)
        {
                // Muestra datos del nodo
                cout << nuevo->nombre << "\t";
                cout << nuevo->telefono << endl;
                // Saltamos al siguiente
                nuevo = nuevo->ps;
        }
        getch();
}

Also on Fandom

Random wikia