Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

wczytywanie głowy w liście

Ostatnio zmodyfikowano 2009-05-01 22:05
Autor Wiadomość
Tomas
Temat założony przez niniejszego użytkownika
wczytywanie głowy w liście
» 2009-04-29 19:58:14
Witam. Od paru dni męczę się z listą i została mi już tylko jedna rzecz, której jakoś nie mogę przejść. Mianowicie chcę, aby głowę z jednej listy przesłać do listy drugiej, oczywiście od strony ogona.

Wklejam mój okrojony do minimum kod:

C/C++
#include <iostream.h>
#include <list>
#include <conio.h>

typedef struct rob
{
    int wartosc;
    struct rob * next;
}
ELEMENT;

class KOLEJKA
{
public:
    int pusta()
    { return( inf.glowa == NULL ); }
    void dodaj( int x );
    void wypisz();
   
    KOLEJKA()
    { inf.glowa = inf.ogon = NULL; }
   
private:
   
    typedef struct
    {
        ELEMENT * glowa;
        ELEMENT * ogon;
    } INFO;
    INFO inf;
};


void KOLEJKA::wypisz()
{
    ELEMENT * q = inf.glowa;
    if( pusta() ) cout << "(kolejka pusta)"; else
    while( q != NULL )
    {
        cout << q->wartosc << "  ";
        q = q->next;
    }
    cout << "\n";
}


void KOLEJKA::dodaj( int x )
{
    ELEMENT * q = new ELEMENT;
    q->wartosc = x;
    q->next = NULL;
   
    if( inf.glowa == NULL )
         inf.glowa = inf.ogon = q;
    else
    {
        ( inf.ogon )->next = q;
        inf.ogon = q;
    }
}




int main()
{
    KOLEJKA K1, K2;
    int a = 2, b = 3, c = 4;
   
    K1.dodaj( a );
    K1.dodaj( b );
    K1.dodaj( c );
    cout << "Kolejka1= ";
    K1.wypisz();
    cout << "Kolejka2= "; // i do tej listy chciałbym wstawić głowę z K1
    getch();
}

Bardzo byłbym wdzięczny za kod :)
Pozdrawiam.
P-6202
DeBugger
» 2009-04-29 20:03:15
Jedno zastrzeżenie:
C/C++
#include <iostream>
Zamiast:
C/C++
#include <iostream.h>
P-6204
DejaVu
» 2009-04-29 20:19:43
C/C++
int KOLEJKA::dajGlowe()
{
    return inf.glowa->wartosc;
}

if( !K1.pusta() ) K2.dodaj( K1.dajGlowe() );
P-6207
Tomas
Temat założony przez niniejszego użytkownika
» 2009-05-01 22:05:54
Super. Dziękuję za pomoc :)
P-6292
« 1 »
  Strona 1 z 1