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

Problem z funkcją globalną (jako argumenty obiekty dwóch różnych klas)

Ostatnio zmodyfikowano 2015-05-10 22:05
Autor Wiadomość
pekfos
» 2015-05-10 15:53:45
Tu nawet nie widać, co ty usiłujesz osiągnąć. Ten kod prościej będzie napisać od nowa.
P-132036
KamilosD
Temat założony przez niniejszego użytkownika
» 2015-05-10 15:56:23
Nie mam czasu na pisanie tego od nowa. Od kilku dni nad tym siedzę. I nie widzę sensu pisać od nowa, wszystko działa oprócz tego.
P-132038
pekfos
» 2015-05-10 16:04:13
Podaj aktualny kod.

C/C++
krawedzie tab[ kraw ];
Co to ma być..?
P-132040
KamilosD
Temat założony przez niniejszego użytkownika
» 2015-05-10 16:06:35
krawedzie tab[ kraw ];  - tutaj tworzę tablicę struktury krawedzie. Jeden element składa się na wierzchołek początkowy, końcowy i wagę.

EDIT: I pewnie tutaj leży problem. Źle odwołuję się do tego obiektu

C/C++
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
#include <stdlib.h>
#include <iomanip>
#include <ctime>
#include <conio.h>

// KAMIL DZIAŁEK - SDIZO PROJEKT II
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

using namespace std;

struct krawedzie
{
    int waga, wp, wk;
};

struct listakraw
{
    int wk, waga;
    listakraw * next;
};

class klgraf
{
public:
    int wierz, kraw;
    float gest;
    krawedzie * tab;
    char ** macierz;
    void readfromfile( string nazwa );
    void display();
    void createrand();
};

class listgraf
    : public klgraf
{
public:
    friend class klgraf;
    listakraw * temp1, * temp2;
    listakraw * head;
    listakraw ** tablist;
    ~listgraf();
    void readfromfile( string nazwa );
    void display1();
};

void addedge( klgraf * obmacgraf, listakraw ** tablist, krawedzie * tab );

listgraf::~listgraf()
{
    delete temp1, temp2;
}

void klgraf::readfromfile( string nazwa )
{
    ifstream plik;
    plik.open( nazwa.c_str(), ios::in );
    if( !plik ) cout << "\n\nBLAD WCZYTYWANIA PLIKU! Podano nieprawidlowa nazwe lub plik nie istnieje.\n\n" << endl;
   
    else
    {
        int i, j, wp1, wk1, waga1, w1, k1;
        plik >> k1;
        plik >> w1;
       
        wierz = w1;
        kraw = k1;
        macierz = new char *[ wierz ]; // Tworzymy tablicę wskaźników macierzy
        krawedzie tab[ kraw ];
       
        for( i = 0; i < wierz; i++ )
             macierz[ i ] = new char[ wierz ]; // Tworzymy wiersze macierzy
       
        for( i = 0; i < wierz; i++ ) // Macierz wypełniamy zerami
             for( int j = 0; j < wierz; j++ ) macierz[ i ][ j ] = 0;
       
        cout << "\nLiczba krawedzi: " << kraw << "\nLiczba wierzcholkow: " << wierz << endl;
       
        for( i = 0; i < kraw; i++ ) // macierz
        {
            plik >> tab[ i ].wp;
            plik >> tab[ i ].wk;
            plik >> tab[ i ].waga;
            macierz[ tab[ i ].wp ][ tab[ i ].wk ] = tab[ i ].waga;
            macierz[ tab[ i ].wk ][ tab[ i ].wp ] = tab[ i ].waga;
        }
       
        display();
        plik.close();
       
    }
   
}

void listgraf::readfromfile( string nazwa )
{
    ifstream plik;
    plik.open( nazwa.c_str(), ios::in );
   
    int i, j, wp1, wk1, waga1, w1, k1;
    plik >> k1;
    plik >> w1;
    wierz = w1;
    kraw = k1;
   
    tablist = new listakraw *[ wierz ]; // Tworzymy tablicę list sąsiedztwa
    for( i = 0; i < wierz; i++ ) tablist[ i ] = NULL; // Tablicę wypełniamy pustymi listami
   
    for( i = 0; i < kraw; i++ ) // Odczytujemy kolejne definicje krawędzi
    {
        temp1 = new listakraw;
        temp2 = new listakraw;
        plik >> wp1;
        plik >> wk1;
        plik >> waga1;
        temp1->wk = wk1;
        temp1->waga = waga1;
        temp1->next = tablist[ wp1 ];
        tablist[ wp1 ] = temp1;
        temp2->wk = wp1;
        temp2->waga = waga1;
        temp2->next = tablist[ wk1 ];
        tablist[ wk1 ] = temp2;
    }
   
    display1();
    plik.close();
}


void klgraf::display()
{
    int i, j;
    cout << "\n\nWyswietlenie macierzowo:\n\n   ";
    for( i = 0; i < wierz; i++ ) cout << setw( 3 ) << i;
   
    cout << endl << endl;
    for( i = 0; i < wierz; i++ )
    {
        cout << setw( 3 ) << i;
        for( j = 0; j < wierz; j++ ) cout << setw( 3 ) <<( int ) macierz[ i ][ j ];
       
        cout << endl;
    }
   
    int pomoc = 0;
    for( i = 0; i < wierz; i++ ) // Sprawdzenie ilosci "jedynek"
         for( int j = 0; j < wierz; j++ ) if( macierz[ i ][ j ] == 1 ) pomoc++;
   
    cout << endl << endl; // << "Ilosc jedynek: " << pomoc << endl << endl;
   
    system( "pause" );
}

void listgraf::display1()
{
    cout << "\n\nWyswietlenie listowo (np. 2w1 oznacza kolejny wierzcholek o indeksie 2 o wadze krawedzi 1):\n\n";
    for( int i = 0; i < wierz; i++ )
    {
        listakraw * temp = new listakraw;
        cout << "lista[" << i << "] = ";
        temp = tablist[ i ];
        while( temp )
        {
            cout << setw( 4 ) << temp->wk << "w" << temp->waga;
            temp = temp->next;
        }
        cout << endl;
    }
    cout << endl << endl;
    system( "pause" );
}

void klgraf::createrand()
{
    int w1, k1, maxkraw, wp1, wk1, n, i, j, waga1;
    n = 0;
    int pomoc = 0;
   
   
    system( "cls" );
    cout << "Ilu wierzcholkowy graf chcesz stworzyc?: ";
    cin >> w1;
   
   
    do
    {
        system( "cls" );
        cout << "Liczba wierzcholkow: " << w1 << "\nPodaj gestosc grafu (podaj w %): ";
        cin >> gest;
    } while( gest < 1 && gest > 100 );
   
    wierz = w1;
    system( "cls" );
    cout << "Liczba wierzcholkow: " << wierz << "\nGestosc grafu: " << gest << "%";
    gest = gest / 100;
   
    maxkraw =(( wierz *( wierz - 1 ) ) / 2 );
    k1 = gest * maxkraw;
    kraw = k1;
    cout << "\nMaksymalna liczba krawedzi " << maxkraw << "\nLiczba krawedzi " << kraw << "\nGestosc " << gest << "\nLiczba wierzcholkow " << wierz << endl;
   
    macierz = new char *[ wierz ]; // Tworzymy tablicę wskaźników
    krawedzie tab[ kraw ]; // Tworzymy tablicę krawedzi
   
    for( i = 0; i < wierz; i++ )
         macierz[ i ] = new char[ wierz ]; // Tworzymy wiersze
   
    for( i = 0; i < wierz; i++ ) // Macierz wypełniamy zerami
         for( int j = 0; j < wierz; j++ ) macierz[ i ][ j ] = 0;
   
    for( i = 0; i < kraw; i++ )
    {
        if( i < wierz - 1 || pomoc == 0 )
        {
            if( i == wierz - 1 )
            {
                pomoc = 1;
                continue;
            }
           
            waga1 =( rand() % 2 + 2 );
            wk1 = n + 1;
            wp1 = n;
            //cout << "\nwk1 " << wk1 << endl << "\nwp1 " << wp1 << endl;
           
            if( wk1 == wp1 )
            {
                i--;
                continue;
            }
            if( macierz[ wp1 ][ wk1 ] != 0 || macierz[ wk1 ][ wp1 ] != 0 )
            {
                i--;
                continue;
            }
           
            tab[ i ].wp = wp1;
            tab[ i ].wk = wk1;
            tab[ i ].waga = waga1;
            //cout << tab[i].wp << endl << tab[i].wk << endl << tab[i].waga << endl;
            macierz[ wp1 ][ wk1 ] = tab[ i ].waga;
            macierz[ wk1 ][ wp1 ] = tab[ i ].waga;
            n++;
        }
        else if( pomoc == 1 )
        {
            waga1 =( rand() % 2 + 2 );
            wk1 =( rand() %( wierz ) );
            wp1 =( rand() %( wierz ) );
           
            if( wk1 == wp1 )
            {
                i--;
                continue;
            }
            if( macierz[ wp1 ][ wk1 ] != 0 || macierz[ wk1 ][ wp1 ] != 0 )
            {
                i--;
                continue;
            }
           
            tab[ i ].wp = wp1;
            tab[ i ].wk = wk1;
            tab[ i ].waga = waga1;
            //cout << tab[i].wp << endl << tab[i].wk << endl << tab[i].waga << endl;
            macierz[ wp1 ][ wk1 ] = tab[ i ].waga;
            macierz[ wk1 ][ wp1 ] = tab[ i ].waga;
        }
       
    }
   
    display();
   
}

void addedge( klgraf * obmacgraf, listakraw ** tablist, krawedzie * tab )
{
    int from, to, waga, ile;
    ile = obmacgraf->kraw;
    cout << "\n\nIle: " << ile << endl << endl;
    for( int i = 0; i < ile; i++ )
    {
        from = tab[ i ].wp;
        to = tab[ i ].wk;
        waga = tab[ i ].waga;
        system( "pause" );
        //cout << endl << from << endl << to << endl << waga;
        tablist[ from ]->wk = to;
        tablist[ to ]->wk = from;
        tablist[ from ]->waga = waga;
        tablist[ to ]->waga = waga;
    }
   
}


int main( int argc, char ** argv )
{
    srand( time( 0 ) );
    klgraf obmacgraf;
    klgraf();
    listgraf obligraf;
   
    menuglowne:
    int wybor;
   
    do
    {
       
        system( "cls" );
        cout << "Kamil Dzialek (209991) - SDIZO Projekt II\n\n"
        << "Wybierz problem, ktory chcesz rozwiazac:\n"
        << "1 - wyznaczanie minimalnego drzewa rozpinajacego\n"
        << "2 - wyznaczanie najkrotszej sciezki w grafie\n"
        << "3 - koniec programu\n\n"
        << "Podaj opcje: ";
        cin >> wybor;
       
        switch( wybor )
        {
        case 1: // MST
            {
                int wyb1;
               
                do
                {
                    mstchoice: system( "cls" );
                   
                    cout << "Co chcesz zrobic?:\n"
                    << "1 - Wczytaj z pliku\n"
                    << "2 - Wygeneruj losowo\n"
                    << "3 - Wyswietl listowo i macierzowo na ekranie\n"
                    << "4 - Algorytm Prima\n"
                    << "5 - Algorytm Kruskala\n"
                    << "0 - Powrot do poprzedniego menu\n\n"
                    << "Podaj opcje: ";
                   
                    cin >> wyb1;
                    system( "cls" );
                   
                    switch( wyb1 )
                    {
                    case 1:
                        {
                            system( "cls" );
                            string nazwa;
                            cout << "Podaj nazwe pliku .txt do wczytania (pamietaj o dodaniu rozszerzenia '.txt'!):\n";
                            cin >> nazwa;
                           
                            obmacgraf.readfromfile( nazwa );
                            obligraf.readfromfile( nazwa );
                            break;
                        }
                    case 2:
                        {
                            system( "cls" );
                            obmacgraf.createrand();
                            obligraf.tablist = new listakraw *[ obmacgraf.wierz ];
                            for( int i = 0; i < obmacgraf.wierz; i++ ) obligraf.tablist[ i ] = NULL;
                           
                            addedge( & obmacgraf, obligraf.tablist, obmacgraf.tab );
                            break;
                        }
                    case 3:
                        {
                            obmacgraf.display();
                            obligraf.display1();
                            break;
                        }
                    }
                } while( wyb1 != 0 );
               
            }
        }
    } while( wybor != 3 );
   
    system( "cls" );
    cout << "KONIEC PROGRAMU\n\n";
    system( "pause" );
    return 0;
}
P-132042
pekfos
» 2015-05-10 16:10:17
krawedzie tab[ kraw ];  - tutaj tworzę tablicę struktury krawedzie.
A wskaźnik tab z klasy przypadkiem się tak samo nazywa i nigdy nie dostaje sensownej wartości?
C/C++
macierz = new char *[ wierz ]; // Tworzymy tablicę wskaźników macierzy
krawedzie tab[ kraw ];
Przecież to nawet nie wygląda podobnie, a ma pełnić tę samą funkcję.

C/C++
listgraf::~listgraf()
{
    delete temp1, temp2;
}
Nie!
P-132043
KamilosD
Temat założony przez niniejszego użytkownika
» 2015-05-10 16:40:36
Nie rozumiem o co Ci tutaj chodzi z tym wskaźnikiem tab. Możesz dokładnie napisać co mam zmienić?

macierz = new char *[ wierz ]; - samo wyświetlanie macierzy
krawedzie tab[ kraw ]; - to przechowuje krawędzie

EDIT:
Ostatnia poprawiona wersja kodu. Wyświetla liste, ale zaraz po tym crash.

C/C++
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
#include <stdlib.h>
#include <iomanip>
#include <ctime>
#include <conio.h>

// KAMIL DZIAŁEK - SDIZO PROJEKT II
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

using namespace std;

struct krawedzie
{
    int waga, wp, wk;
};

struct listakraw
{
    int wk, waga;
    listakraw * next;
};

class klgraf
{
public:
    int wierz, kraw;
    float gest;
    krawedzie * tab;
    char ** macierz;
    void readfromfile( string nazwa );
    void display();
    void createrand();
};

class listgraf
    : public klgraf
{
public:
    friend class klgraf;
    listakraw * temp1, * temp2;
    listakraw * head;
    listakraw ** tablist;
    ~listgraf();
    void readfromfile( string nazwa );
    void display1();
};

void addedge( klgraf * obmacgraf, listakraw ** tablist, krawedzie * tab );

listgraf::~listgraf()
{
    delete temp1, temp2;
}

void klgraf::readfromfile( string nazwa )
{
    ifstream plik;
    plik.open( nazwa.c_str(), ios::in );
    if( !plik ) cout << "\n\nBLAD WCZYTYWANIA PLIKU! Podano nieprawidlowa nazwe lub plik nie istnieje.\n\n" << endl;
   
    else
    {
        int i, j, wp1, wk1, waga1, w1, k1;
        plik >> k1;
        plik >> w1;
       
        wierz = w1;
        kraw = k1;
        macierz = new char *[ wierz ]; // Tworzymy tablicę wskaźników macierzy
        tab = new krawedzie[ kraw ];
       
        for( i = 0; i < wierz; i++ )
             macierz[ i ] = new char[ wierz ]; // Tworzymy wiersze macierzy
       
        for( i = 0; i < wierz; i++ ) // Macierz wypełniamy zerami
             for( int j = 0; j < wierz; j++ ) macierz[ i ][ j ] = 0;
       
        cout << "\nLiczba krawedzi: " << kraw << "\nLiczba wierzcholkow: " << wierz << endl;
       
        for( i = 0; i < kraw; i++ ) // macierz
        {
            plik >> tab[ i ].wp;
            plik >> tab[ i ].wk;
            plik >> tab[ i ].waga;
            macierz[ tab[ i ].wp ][ tab[ i ].wk ] = tab[ i ].waga;
            macierz[ tab[ i ].wk ][ tab[ i ].wp ] = tab[ i ].waga;
        }
       
        display();
        plik.close();
       
    }
   
}

void listgraf::readfromfile( string nazwa )
{
    ifstream plik;
    plik.open( nazwa.c_str(), ios::in );
   
    int i, j, wp1, wk1, waga1, w1, k1;
    plik >> k1;
    plik >> w1;
    wierz = w1;
    kraw = k1;
   
    tablist = new listakraw *[ wierz ]; // Tworzymy tablicę list sąsiedztwa
    for( i = 0; i < wierz; i++ ) tablist[ i ] = NULL; // Tablicę wypełniamy pustymi listami 
   
    for( i = 0; i < kraw; i++ ) // Odczytujemy kolejne definicje krawędzi
    {
        temp1 = new listakraw;
        temp2 = new listakraw;
        plik >> wp1;
        plik >> wk1;
        plik >> waga1;
        temp1->wk = wk1;
        temp1->waga = waga1;
        temp1->next = tablist[ wp1 ];
        tablist[ wp1 ] = temp1;
        temp2->wk = wp1;
        temp2->waga = waga1;
        temp2->next = tablist[ wk1 ];
        tablist[ wk1 ] = temp2;
    }
   
    display1();
    plik.close();
}


void klgraf::display()
{
    int i, j;
    cout << "\n\nWyswietlenie macierzowo:\n\n   ";
    for( i = 0; i < wierz; i++ ) cout << setw( 3 ) << i;
   
    cout << endl << endl;
    for( i = 0; i < wierz; i++ )
    {
        cout << setw( 3 ) << i;
        for( j = 0; j < wierz; j++ ) cout << setw( 3 ) <<( int ) macierz[ i ][ j ];
       
        cout << endl;
    }
   
    int pomoc = 0;
    for( i = 0; i < wierz; i++ ) // Sprawdzenie ilosci "jedynek"
         for( int j = 0; j < wierz; j++ ) if( macierz[ i ][ j ] == 1 ) pomoc++;
   
    cout << endl << endl; // << "Ilosc jedynek: " << pomoc << endl << endl;
   
    system( "pause" );
}

void listgraf::display1()
{
    cout << "\n\nWyswietlenie listowo (np. 2w1 oznacza kolejny wierzcholek o indeksie 2 o wadze krawedzi 1):\n\n";
    for( int i = 0; i < wierz; i++ )
    {
        listakraw * temp = new listakraw;
        cout << "lista[" << i << "] = ";
        temp = tablist[ i ];
        while( temp )
        {
            cout << setw( 4 ) << temp->wk << "w" << temp->waga;
            temp = temp->next;
        }
        cout << endl;
    }
    cout << endl << endl;
    system( "pause" );
}

void klgraf::createrand()
{
    int w1, k1, maxkraw, wp1, wk1, n, i, j, waga1;
    n = 0;
    int pomoc = 0;
   
   
    system( "cls" );
    cout << "Ilu wierzcholkowy graf chcesz stworzyc?: ";
    cin >> w1;
   
   
    do
    {
        system( "cls" );
        cout << "Liczba wierzcholkow: " << w1 << "\nPodaj gestosc grafu (podaj w %): ";
        cin >> gest;
    } while( gest < 1 && gest > 100 );
   
    wierz = w1;
    system( "cls" );
    cout << "Liczba wierzcholkow: " << wierz << "\nGestosc grafu: " << gest << "%";
    gest = gest / 100;
   
    maxkraw =(( wierz *( wierz - 1 ) ) / 2 );
    k1 = gest * maxkraw;
    kraw = k1;
    cout << "\nMaksymalna liczba krawedzi " << maxkraw << "\nLiczba krawedzi " << kraw << "\nGestosc " << gest << "\nLiczba wierzcholkow " << wierz << endl;
   
    macierz = new char *[ wierz ]; // Tworzymy tablicę wskaźników
    tab = new krawedzie[ kraw ]; // Tworzymy tablicę krawedzi
   
    for( i = 0; i < wierz; i++ )
         macierz[ i ] = new char[ wierz ]; // Tworzymy wiersze
   
    for( i = 0; i < wierz; i++ ) // Macierz wypełniamy zerami
         for( int j = 0; j < wierz; j++ ) macierz[ i ][ j ] = 0;
   
    for( i = 0; i < kraw; i++ )
    {
        if( i < wierz - 1 || pomoc == 0 )
        {
            if( i == wierz - 1 )
            {
                pomoc = 1;
                continue;
            }
           
            waga1 =( rand() % 2 + 2 );
            wk1 = n + 1;
            wp1 = n;
            //cout << "\nwk1 " << wk1 << endl << "\nwp1 " << wp1 << endl;
           
            if( wk1 == wp1 )
            {
                i--;
                continue;
            }
            if( macierz[ wp1 ][ wk1 ] != 0 || macierz[ wk1 ][ wp1 ] != 0 )
            {
                i--;
                continue;
            }
           
            tab[ i ].wp = wp1;
            tab[ i ].wk = wk1;
            tab[ i ].waga = waga1;
            //cout << tab[i].wp << endl << tab[i].wk << endl << tab[i].waga << endl;
            macierz[ wp1 ][ wk1 ] = tab[ i ].waga;
            macierz[ wk1 ][ wp1 ] = tab[ i ].waga;
            n++;
        }
        else if( pomoc == 1 )
        {
            waga1 =( rand() % 2 + 2 );
            wk1 =( rand() %( wierz ) );
            wp1 =( rand() %( wierz ) );
           
            if( wk1 == wp1 )
            {
                i--;
                continue;
            }
            if( macierz[ wp1 ][ wk1 ] != 0 || macierz[ wk1 ][ wp1 ] != 0 )
            {
                i--;
                continue;
            }
           
            tab[ i ].wp = wp1;
            tab[ i ].wk = wk1;
            tab[ i ].waga = waga1;
            //cout << tab[i].wp << endl << tab[i].wk << endl << tab[i].waga << endl;
            macierz[ wp1 ][ wk1 ] = tab[ i ].waga;
            macierz[ wk1 ][ wp1 ] = tab[ i ].waga;
        }
       
    }
   
    display();
   
}

void addedge( klgraf * obmacgraf, listakraw ** tablist, krawedzie * tab )
{
    int from, to, waga, ile;
    ile = obmacgraf->kraw;
    cout << "\n\nIle: " << ile << endl << endl;
    listakraw * t1, * t2;
   
    for( int i = 0; i < ile; i++ )
    {
        t1 = new listakraw;
        t2 = new listakraw;
        t1->waga = tab[ i ].waga;
        t1->wk = tab[ i ].wk;
        t2->waga = tab[ i ].waga;
        t2->wk = tab[ i ].wp;
        t1->next = tablist[ tab[ i ].wp ];
        tablist[ tab[ i ].wp ] = t1;
        t2->next = tablist[ tab[ i ].wk ];
        tablist[ tab[ i ].wk ] = t2;
    }
}


int main( int argc, char ** argv )
{
    srand( time( 0 ) );
    klgraf obmacgraf;
    klgraf();
    listgraf obligraf;
   
    menuglowne:
    int wybor;
   
    do
    {
       
        system( "cls" );
        cout << "Kamil Dzialek (209991) - SDIZO Projekt II\n\n"
        << "Wybierz problem, ktory chcesz rozwiazac:\n"
        << "1 - wyznaczanie minimalnego drzewa rozpinajacego\n"
        << "2 - wyznaczanie najkrotszej sciezki w grafie\n"
        << "3 - koniec programu\n\n"
        << "Podaj opcje: ";
        cin >> wybor;
       
        switch( wybor )
        {
        case 1: // MST
            {
                int wyb1;
               
                do
                {
                    mstchoice: system( "cls" );
                   
                    cout << "Co chcesz zrobic?:\n"
                    << "1 - Wczytaj z pliku\n"
                    << "2 - Wygeneruj losowo\n"
                    << "3 - Wyswietl listowo i macierzowo na ekranie\n"
                    << "4 - Algorytm Prima\n"
                    << "5 - Algorytm Kruskala\n"
                    << "0 - Powrot do poprzedniego menu\n\n"
                    << "Podaj opcje: ";
                   
                    cin >> wyb1;
                    system( "cls" );
                   
                    switch( wyb1 )
                    {
                    case 1:
                        {
                            system( "cls" );
                            string nazwa;
                            cout << "Podaj nazwe pliku .txt do wczytania (pamietaj o dodaniu rozszerzenia '.txt'!):\n";
                            cin >> nazwa;
                           
                            obmacgraf.readfromfile( nazwa );
                            obligraf.readfromfile( nazwa );
                            break;
                        }
                    case 2:
                        {
                            system( "cls" );
                            obmacgraf.createrand();
                            obligraf.tablist = new listakraw *[ obmacgraf.wierz ];
                            for( int i = 0; i < obmacgraf.wierz; i++ ) obligraf.tablist[ i ] = NULL;
                           
                            addedge( & obmacgraf, obligraf.tablist, obmacgraf.tab );
                            obligraf.display1();
                            break;
                        }
                    case 3:
                        {
                            obmacgraf.display();
                            obligraf.display1();
                            break;
                        }
                    }
                } while( wyb1 != 0 );
               
            }
        }
    } while( wybor != 3 );
   
    system( "cls" );
    cout << "KONIEC PROGRAMU\n\n";
    system( "pause" );
    return 0;
}
P-132044
pekfos
» 2015-05-10 18:15:38
Nie poprawiłeś nawet wszystkich wskazanych błędów.
P-132049
KamilosD
Temat założony przez niniejszego użytkownika
» 2015-05-10 18:19:10
Bo nie wiem jak :/
P-132052
1 2 3 « 4 » 5
Poprzednia strona Strona 4 z 5 Następna strona