O mica problema la rularea codului

Intrebari despre limbajul C++, standardul C++, STL, OOP in C++ sau alte subiecte nelegate de VisualC++

O mica problema la rularea codului

Mesajde Andexx » 23 Oct 2016, 15:44

Salutari! Sunt incepator in C++ si pe masura ce am invatat lucruri noi, am incercat sa fac un program micut, insa cand il rulez, executa doar primul subprogram(prima functie), dupa care se opreste, cand normal ar trebui sa execute urmatorul subprogram, apelat din aceasta functie.

Cod: Selectaţi tot
#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>

using namespace std;

void logare();
void alegere();
void logat();
void deconectare();
void contNou();


void logare()
{
    string x, password;
    cout<<"Pentru a putea intra in contul tau trebuie mai intai sa te loghezi..."<<endl;
    cout<<"Username:"<<endl;
    cin>>username;
    cout<<"Password:"<<endl;
    cin>>password;

    logat();

}

void alegere()
{
    string x;
    cout<<"Buna! Alege, te rog, daca vrei sa te loghezi pe contul tau sau daca vrei sa iti faci un cont nou, scriind cuvantul LOG pentru a te loga, sau NOU pentru a te conecta:"<<endl;
    cin>>x;
    if(x=="LOG")
        logare();
    else if(x=="NOU")
        contNou();
}

void logat()
{
    string x;
    int numar;
    int a=0;
    cout<<"Bine ai venit, "<<username<<endl;
    cout<<"Doresti sa afii care este numarul tau aleatoriu?"<<endl;
    cin>>x;
    if(x=="da" || x=="DA" || x=="Da")
    {
        srand(time(0));
        numar = rand();

        cout<<"Numarul tau aleatoriu este: "<<numar<<endl;
    }
    else if(x=="nu" || x=="NU" || x=="Nu")
    {
        cout<<"Doresti sa te deconectezi?"<<endl;
        cin>>x;
        if(x=="da" || x=="DA" || x=="Da")
            deconectare();
        else if(x=="nu" || x=="NU" || x=="Nu")
        {
            cout<<"Cand doresti sa te deconectezi scrie DA"<<endl;
            while(a==0)
            {
                cin>>x;
                if(x=="da" || x=="DA" || x=="Da")
                {
                    a++;
                    deconectare();
                }
            }
        }
    }
}

void deconectare()
{
    cout<<"Te-ai deconectat"<<endl;
}

 void contNou()
{
    string password;
    cout<<"Pentru a-ti crea un cont nou, trebuie sa iti setezi un Username si o Parola:"<<endl;
    cout<<"Username: "; cin>>username;
    cout<<endl;
    cout<<"Password: "; cin>>password;
    cout<<endl;

    cout<<"Felicitari, tocmai ti-ai creat un cont nou!"<<endl;
}

int main()
{
    string username;
    alegere();

    return 0;
}


Dupa ce il rulez si scriu in consola LOG, imi afiseaza doar primul cout din void logare(), dupa care procesul se returneaza la 0. De ce nu afiseaza si restul, sau de ce nu ma lasa sa introduc usernameul si password?

Am incercat sa rulez si fara functiile prototip, am incercat si variabile globale...

Multumesc pentru ajutor! :thumbsup:
Avatar utilizator
Andexx
Junior
Junior
 
Mesaje: 1
Membru din: 23 Oct 2016, 15:13
Judet: Bacău

Re: O mica problema la rularea codului

Mesajde Kavarna » 09 Noi 2016, 21:14

Incearca
Cod: Selectaţi tot
getline(cin,x);
Kavarna
Junior
Junior
 
Mesaje: 11
Membru din: 20 Sep 2015, 19:14
Judet: Neamţ


Înapoi la Limbajul C++

Cine este conectat

Utilizatorii ce navighează pe acest forum: Niciun utilizator înregistrat şi 2 vizitatori

cron