» »

[c++] Problem z podprogramom

[c++] Problem z podprogramom

xardas212 ::

Zdravo,

void human::brisi_element(human vm[], short & k) {
   
    int clan = 0;
    bool prav;
    cout << endl;
    cout << "    + Vnesite stevilko ID avta za izbris! (Pritisnite  za preklic)" << endl;
    cout << "    + Avto ID: ";
    cin >> clan;
    cout << endl;

    
    if (clan == 0) {
        cout << "    + BRISANJE PREKLICANO!" << endl;

    } else if ((clan != 0) && (clan <= k)) {
        {
        clan--;
        for (clan; clan < k; clan++)
            vm[clan] = vm[clan + 1];
        k--;
        }
        cout << "    + BRISANJE USPESNO!" << endl;

    }



Imam problem, imam ustvarjen "glavni meni" v katerega se vrneš ko je podprograma konec. Problem pa je v tem da glavni meni "čita" črke od a do f ....če podaš karkoli druzga javi napako, zaj pa imam problem, da ko se zakluči ta podprogram se vrne avtomatsko v "glavni meni" in glavni meni posledično javi napako ker tukaj podaš cifro za izbris določenega elelmenta ali izhod...


Upam da razumete :D


Lahko kdo prosim poda rešitev


lp xardas212

xardas212 ::

void human::brisi_element(human vm[], short & k) {
    int clan;
    bool prav;


    cout << endl;
    cout << "    + Vnesite stevilko ID avta za izbris!" << endl<<endl;
    cout << "    + Avto ID: ";
    cin >> clan;
    cout << endl;

    if ((clan != 0) && (clan <= k)) {
        clan--;
        for (clan; clan < k; clan++)
            vm[clan] = vm[clan + 1];
        k--;
        cout << "    + Brisanje uspesno!" << endl;
    }
    else if (clan > k) {
        cout << "    + Vneseno stevilo ni ustrezno!" << endl;
    }

}

void izbira_brisanja(human hu[], short koolko) {
    char bes; 
    string neke;
    do {
        cout << endl; 
        cout << "    --------------Meni sortiranja---------" << endl; //1.k
        cout << endl;
        cout << "    +     a:) Brisi vnos                 +" << endl;
        cout << "    +     b:) Vrni se v glavni meni      +" << endl;
        cout << endl;
        cout << "    --------------------------------------" << endl;
        cout << endl;
        cout << "    + Podaj ukaz: ";
        getline(cin, neke); //2.k denis
        cout << endl;
        if (neke.length() == 1)bes = neke[0]; //prilagoditev
        if (!(((bes >= 'a') && (bes <= 'c') || (bes >= 'A') && (bes <= 'C')))) cout <<    
     "+ Vnesen podatek ni pravilen, prosim ponovi vnos!" << endl; //napaka
    }while (!(((bes >= 'a') && (bes <= 'c') || (bes >= 'A') && (bes <= 'C')))); //negacija


    if (bes == 'a' || bes == 'A') 
    {
        hu[0].brisi_element(hu, koolko);
    }
    if (bes == 'b' || bes == 'B')
    {
        cout << "    + Sedaj si v glavnem meniju!" << endl;
    }

}



Evo zaj sn naredo meni...tak da lahko grem ven brez napake....ce pa brisem pa mi napise "Brisanje uspesno!"....potem mi izpise glavni meni ter takoj za njim meni sortiranja????? ce v meniju sortiranja izberem opcijo b se podprogram normalno zapre in gre v glavni meni.....sedaj imam problem zelim da ko izbrisem element da mi gre ali direkt v glavni meni ali direkt v meni sortiranja????


lp

Zgodovina sprememb…

ERGY ::

Prvo se zjasni kaj je tvoj problem.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Detroit: Become Human (strani: 1 2 )

Oddelek: Igre
8812616 (2356) yayo
»

Kam z rabljenimi oblačili?

Oddelek: Loža
164897 (2271) gruntfürmich
»

Športni ribolov/mučenje živali?

Oddelek: Problemi človeštva
353300 (2663) Tear_DR0P
»

Sociologija - Temeljne Človekove Pravice

Oddelek: Šola
302947 (2514) d0rK
»

DF v linuxu mi nekaj ne štima

Oddelek: Operacijski sistemi
7748 (660) KoReNJe

Več podobnih tem