1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[Ajuda] Euromilhoes e totoloto C++

Discussão em 'Programação' iniciada por DevilFirePT, 22 de Janeiro de 2009. (Respostas: 3; Visualizações: 5763)

  1. DevilFirePT

    DevilFirePT Power Member

    Boas, eu tenho um trabalho para fazer pa escola(11º) só que nao tou a conseguir fazer meter o meu programa a funcionar correctamente.

    Alguem me pode ajudar? E se possivel dizerem a maneira mais facil para o utilizador de escolher só 1 chave ou todas para visualizar e apagar?
    Código:
    #include<iostream>
    #include<fstream>
    #include<string>
    #include<ctime>
    
    using namespace std;
    
    void main()
    {
        srand((unsigned)time(NULL)); 
        char jogo,rsp[2],gravar;
        int apostas=0,i=0,numeros,estrelas,n,y,rspt,totorsp;
        int resp,resposta,respostam,resps,a=0,l=0,c=0,c1=0,neuro,numeroeuro[15][10],eeuro,estrelaeuro[15][10];
        int g,ge;//Numeros e Estrelas para Gravar
        int jtoto[15][15],ntoto;
        char p;
    
    
    
    
        fstream euromilhoes("euro.txt",ios::out|ios::in|ios::app);
        fstream totoloto("toto.txt",ios::out|ios::in|ios::app);
        do
        {
    cout<<"==============MENU==============="<<endl;
    cout<<"||1-EUROMILHOES                ||"<<endl;
    cout<<"||2-TOTOLOTO                   ||"<<endl;
    cout<<"||3-CONSULTAR CHAVES           ||"<<endl;
    cout<<"||4-APAGAR CHAVES              ||"<<endl;
    cout<<"||5-SAIR                   ||"<<endl;
    cout<<"==============MENU==============="<<endl;
            fflush(stdin);
            cin>>resp;
            if (resp==1)//inicio da opcao 1- Euromilhoes
            {
                if(!euromilhoes)
                {
                    cout<<"Nao se consegue abrir o ficheiro";
                    //cin.clear();
                    getchar();
                    return;
                }
    cout<<"==========EUROMILHOES=========="<<endl;
    cout<<"||1-Apostas Simples          ||"<<endl;
    cout<<"||2-Apostas Multiplas        ||"<<endl;
    cout<<"||3-Sair             ||"<<endl;
    cout<<"==========EUROMILHOES=========="<<endl;
                    fflush(stdin);
                    cin>>resp;
        
    
                    if(resp==1)
                    {
                        apostas=0;
                    do
                    {
                        cout<<"Quantas apostas quer jogar? MAXIMO:5"<<endl<<"Opção";
                        cin>>apostas;
                    }
                    while(apostas!=1 && apostas!=2 && apostas!= 3 && apostas!=4 && apostas!=5);
                    for(y=0;y<apostas;y++)
                    {
                        cout<<"Numeros:";
                        for (i=0;i<5;i++)
                            {
                                    neuro=rand()%51+1;
                                    numeroeuro[a][i]=neuro;
                                    cout<<numeroeuro[a][i]<<",";
                            }
                        cout<<"Estrelas: ";
                        for (y=0;y<2;y++) //gera 2 estrelas
                            {
                                eeuro=rand()%10+1;
                                estrelaeuro[a][y]=eeuro;
                                cout<<estrelaeuro[a][y]<<",";
                            }
                        cout<<endl;
                    
    
                            cout<<"Deseja gravar? S(im) N(ao)";
                            cin>>gravar;
                            if(gravar=='s'||'S')
                            {
                                for(l=0;l<apostas;l++)
                                {
                                    for(c=0;c<5;c++)
                                    {
                                        euromilhoes<<numeroeuro[l][c];
                                        euromilhoes<<",";
                                    }
                                    euromilhoes<<"-";
                                    for (c1=0;c1<2;c1++)
                                    {
                                        euromilhoes<<estrelaeuro[l][c];
                                        euromilhoes<<",";
                                    }
                                euromilhoes<<"\n";
                                }
                            cout<<"A chave foi guardada com exito"<<endl;
                            cout<<"Boa Sorte =D"<<endl;
                            }
                            else
                                cout<<"Boa Sorte =D"<<endl;
                    }
    
                
                    }//fim da opcao 1
    
                    if (resp==2) //inicio da opcao 2
                    {
                    do
                    {
                        cout<<"Quantos numeros quer jogar?MIN:5 MAX:11"<<endl;
                        cin>>numeros;
                    }
                    while(numeros!=5&&numeros!=6&&numeros!=7&&numeros!=8&&numeros!=9&&numeros!=10&&numeros!=11);
                    switch(numeros)
                    {
                            case 5:
                                    do
                                    {
                                    cout<<" Quantas estrelas quer jogar?MIN:3 MAX:9"<<endl;
                                    cin>>estrelas;
                                    }
                                    while(estrelas!=3&&estrelas!=4&&estrelas!=5&&estrelas!=6&&estrelas!=7&&estrelas!=8&&estrelas!=9);
                                    break;
        
                            case 6:
                                    do
                                    {
                                    cout<<" Quantas estrelas quer jogar?MIN:2 MAX:9"<<endl;
                                    cin>>estrelas;
                                    }
                                    while(estrelas!=2&&estrelas!=3&&estrelas!=4&&estrelas!=5&&estrelas!=6&&estrelas!=7&&estrelas!=8&&estrelas!=9);
                                    break;
        
                            case 8:
                                    do
                                    {
                                    cout<<" Quantas estrelas quer jogar?MIN:2 MAX:5"<<endl;
                                    cin>>estrelas;
                                    }
                                    while(estrelas!=2&&estrelas!=3&&estrelas!=4&&estrelas!=5);
                                    break;
    
                            case 9:
                                    do
                                    {
                                    cout<<" Quantas estrelas quer jogar?MIN:2 MAX:4"<<endl;
                                    cin>>estrelas;
                                    }
                                    while(estrelas!=2&&estrelas!=3&&estrelas!=4);
                                    break;
    
                            case 10:
                                    do
                                    {
                                    cout<<" Quantas estrelas quer jogar?MIN:2 MAX:3"<<endl;
                                    cin>>estrelas;
                                    }
                                    while(estrelas!=2&&estrelas!=3);
                                    break;
        
                            case 11:
                                    cout<<" Quantas estrelas quer jogar?MIN:2 MAX:2"<<endl;
                                    estrelas=2;
                                    break;
                            default:
                                    break;
                    }
                            cout<<"Numeros:";
                            for(i=0;i<numeros;i++)
                            {
                                neuro=rand()%50+1;
                                numeroeuro[0][i]=neuro;
                                cout<<numeroeuro[0][i]<<",";
    
                            }
                            cout<<" Estrelas:";
                            for (c=0;c<estrelas;c++)
                            {
                                eeuro=rand()%9+1;
                                estrelaeuro[0][c]=eeuro;
                                cout<<estrelaeuro[0][c]<<",";
                            }
                            cout<<endl;
    
                            cout<<"Deseja gravar? S(im) N(ao)"<<endl;
                            cin>>gravar;
                            if(gravar=='s'||'S')
                            {
                                    for(g=0;g<numeros;g++)
                                    {
                                        euromilhoes<<numeroeuro[g];
                                        euromilhoes<<",";
                                    }
                                    euromilhoes<<"-";
                                    for (ge=0;ge<estrelas;ge++)
                                    {
                                        euromilhoes<<estrelaeuro[ge];
                                        euromilhoes<<",";
                                    }
                            euromilhoes<<"\n";
                            cout<<"Chave Guardada!"<<endl;
                            cout<<"Boa Sorte =D"<<endl;
                            }
                            else
                                cout<<"Boa Sorte =D"<<endl;
    
                    }//Fim da opçao 1-Euromilhoes
                }
                if (resp==2)//inicio da opcao 2- totoloto
                {
    
                    if(!totoloto)
                    {
                        cout<<"Nao se consegue abrir o ficheiro";
                        //cin.clear();
                        fflush(stdin);
                        getchar();
                        return;
                    }
    
                    cout<<"==========TOTOLOTO=========="<<endl;
                    cout<<"||1-Apostas Simples       ||"<<endl;
                    cout<<"||2-Apostas Multiplas     ||"<<endl;
                    cout<<"||3-Sair                 ||"<<endl;
                    cout<<"==========TOTOLOTO=========="<<endl;
                    fflush(stdin);
                    cin>>resp;
        
                    if (resp==1) //inicio da opcao 1- Apostas Simples
                    {
                    do
                    {
                        cout<<"Quantas apostas quer jogar? 2,4,6,8,10";
                        cin>>numeros;
                    }
                    while(numeros!=2&&numeros!=4&&numeros!=6&&numeros!=8&&numeros!=10);
                    for(i=0;i<numeros;i++)
                        {
                            cout<<"Nr "<<i+1<<endl;
                                for (c=0;c<6;c++)
                                {
                                    ntoto=rand()%50+1;
                                    jtoto[i][c]=ntoto;
                                    cout<<jtoto[i][c]<<",";
                                }
                                    cout<<endl;
                    }
                    }
                    
                    if(resp==2) //inicio da opçao 2- Apostas Multiplas
                    {
                    do
                    {
                        cout<<"Quantos numeros quer jogar? MIN:5 MAX:12";
                        cin>>apostas;
                    }
                    while(apostas!=5&&apostas!=6&&apostas!=7&&apostas!=8&&apostas!=9&&apostas!=10&&apostas!=11&&apostas!=12);
                        for(c=0;c<apostas;c++)
                            {
                                ntoto=rand()%50+1;
                                jtoto[0][c]=ntoto;
                                cout<<jtoto[0][c]<<",";
                            }
                            cout<<endl;
                    }
                
                    }//fim da opcao 2 - Apostas Multiplas
    
        
                if(resp==3)
                {
                    cout<<"De que jogo quer ver as chaves? T-TOTOLOTO E-EUROMILHOES";
                    cin>>jogo;
                    if (jogo=='T'||jogo=='t')
                    {
                        if (!totoloto)
                        {
                            cout<<"O totoloto encontra-se vazio!"<<endl;
                            fflush (stdin);
                            getchar();    
                            return;
                        }
                        cout<<"=======Visualizar TOTOLOTO======="<<endl;
                        cout<<"||1-Consultar uma chave        ||"<<endl;
                        cout<<"||2-Consultar todas as chaves  ||"<<endl;
                        cout<<"=======Visualizar TOTOLOTO======="<<endl;
                        cin>>totorsp;
    
                        if(totorsp==1)
                        {
                            while(totoloto.get(p))    
                                    cout<<p;
                            cout<<"Prima qualquer tecla para voltar\n";
                            fflush(stdin);
                            getchar();
                        }//fim do if rxp
                        }
        
                }
    
                if (resp==4)
                    {
                        cout<<"Deseja apagar tudo ou apenas um?\n";
                        cout<<"Tudo - t // apenas um - u\n";
                        cin>>rsp;
                        cout<<"De que jogo? T-TOTOLOTO E-EUROMILHOES";
                        cin>>jogo;
                        if (jogo=='t'||jogo=='T')
                        {
                             if (remove ("toto.txt")!=0)
                                 cout<<"Ficheiro eliminado\n";
                             else
                                 cout<<"O ficheiro nao foi eliminado\n";
                        }
                        if (jogo=='e'||jogo=='E')
                        {
                             if (remove ("euro.txt")!=0)
                                 cout<<"Ficheiro eliminado\n";
                             else
                                 cout<<"O ficheiro nao foi eliminado\n";
                        }
                  }
        
            //Sair do Programa
            if (resp==5)
            {
                cout<<"Quer realmente sair? 1-SIM";
                cin>>resps;
                if (resps==1)
                    respostam=1;
                else
                    respostam=2;
            }//fim da opcao 5
        }
        while(respostam!=1);
    }
    
     
    Última edição: 24 de Janeiro de 2009
  2. DevilFirePT

    DevilFirePT Power Member

    Codigo Alterado para o que tenho agora
     
  3. The_Myr

    The_Myr Power Member

    Boas,
    Pelo que eu vi do código, parece-me que isso te dá problemas, devido a estares a declarar a variável resposta como int e depois mais à frente atribuis o valor true ou false como se de uma variável booleana se tratasse.
    Aconselho-te a mudar o int resposta para bool resposta, que talvez te resolverá alguma coisa.

    Cumps
     
  4. DevilFirePT

    DevilFirePT Power Member

    sim, ja tinha reparado isso era para tirar, o meu codigo agora gera os numeros so falta validar. Alguem tem alguma dica de como devo Visualizar ou Apagar só 1 chave ou todas?


    PS: codigo alterado
     

Partilhar esta Página