Ir ao conteúdo
  • Cadastre-se
Odgii

C++ o q ta errado no meu switch?

Posts recomendados

#include <iostream>
#include <string>
#include <stdlib.h>
using namespace std;
void main()
{
	
	// Arrays e valores pokemon 
	
	// Os Arrays são: Força, Defesa, Velocidade.

	
	int charmander [4] = {4,3,5};
	int charmeleon [4] = {3,3,4};
	int charizard  [4] = {4,3,5};
	
	int squirtle   [4] = {3,3,2};
	int wartotle   [4] = {3,4,3};
	int blastoise  [4] = {4,4,4};

	int bulbasaur  [4] = {3,2,3};
	int ivysaur    [4] = {3,3,3};
	int Venusaur   [4] = {4,4,4};
	
	int op;
	char op_time, atri;
	
	    cout << "********************************************\n";
		cout << "*            Super Trunfo Pokemon          *\n";
		cout << "********************************************\n";
		cout << "*                                          *\n";
		cout << "*                                          *\n";
		cout << "*           1 - Iniciar Jogo               *\n"; 
		cout << "*           2 - Como Jogar                 *\n";
		cout << "*           3 - Desenvolvedores            *\n";
		cout << "*           4 - Sair                       *\n";
		cout << "*                                          *\n";
		cout << "*                                          *\n";
		cout << "********************************************\n";
		cin >> op;
		
		 	switch(op)
		{
			case 4:
				exit(0);
			case 3:
			system("cls");
					cout << "********************************************\n";
					cout << "*              Desenvoveldores             *\n";
					cout << "********************************************\n";
					cout << "*                                          *\n";
					cout << "*               EM PROCESSO                *\n"; 
					cout << "*                                          *\n";
					cout << "*                                          *\n";
					cout << "*                                          *\n";
					cout << "********************************************\n";
					cin >> op_time;	
			case 2: 	
					system("cls");
					cout << "********************************************\n";
					cout << "*              Como Jogar                  *\n";
					cout << "********************************************\n";
					cout << "*                                          *\n";
					cout << "*             EM PROCESSO                  *\n"; 
					cout << "*                                          *\n";
					cout << "*                                          *\n";
					cout << "*                                          *\n";
					cout << "********************************************\n";
					cin >> op_time;	
			case 1:
				system("cls");
					cout << "********************************************\n";
					cout << "*              Escolha Seu Time            *\n";
					cout << "********************************************\n";
					cout << "*                                          *\n";
					cout << "*            A - Fogo                      *\n"; 
					cout << "*            B - Agua                      *\n";
					cout << "*            C - Planta                    *\n";
					cout << "*                                          *\n";
					cout << "********************************************\n";
					cin >> op_time;	
					
					
					
					switch (op_time)
						{
							case 'A': 
							system("cls");
							cout << "********************************************\n";
							cout << "*          Escolha Com o Que Combater      *\n";
							cout << "********************************************\n";
							cout << "*                                          *\n";
							cout << "*            1 - Forca                     *\n"; 
							cout << "*            2 - Defesa                    *\n";
							cout << "*            3 - Agilidade                 *\n";
							cout << "*                                          *\n";
							cout << "********************************************\n";
							cin >> atri;
									
							switch(atri)
							{
								
								case '1':
									system("cls");
									
											{
									
									
										
										cout << "********************************************\n";
										cout << "*                  1                       *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*                FIM DE JOGO               *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
											}
											break;
									
										
										
											case '2':
											system("cls");
											{
									
										
										cout << "********************************************\n";
										cout << "*                   2                      *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*               FIM DE JOGO                *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
											}
										break;
										
									
											
										
											case '3':
											system("cls");
											{
										
									
										
										cout << "********************************************\n";
										cout << "*                   3                      *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*               FIM DE JOGO                *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
										
											}
									
	
					switch (op_time)
						{
							case 'B': 
							system("cls");
							cout << "********************************************\n";
							cout << "*          Escolha Com o Que Combater      *\n";
							cout << "********************************************\n";
							cout << "*                                          *\n";
							cout << "*            1 - Forca                     *\n"; 
							cout << "*            2 - Defesa                    *\n";
							cout << "*            3 - Agilidade                 *\n";
							cout << "*                                          *\n";
							cout << "********************************************\n";
							cin >> atri;
									
							switch(atri)
							{
								
								case '1':
									system("cls");
									
											{
									
									
										
										cout << "********************************************\n";
										cout << "*                  1.2                       *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*                FIM DE JOGO               *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
											}
											break;
									
										
										
											case '2':
											system("cls");
											{
									
										
										cout << "********************************************\n";
										cout << "*                   2.2                    *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*               FIM DE JOGO                *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
											}
										break;
										
									
											
										
											case '3':
											system("cls");
											{
										
									
										
										cout << "********************************************\n";
										cout << "*                   3.2                    *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*               FIM DE JOGO                *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
										
											}
									
									switch (op_time)
						{
							case 'C': 
							system("cls");
							cout << "********************************************\n";
							cout << "*          Escolha Com o Que Combater      *\n";
							cout << "********************************************\n";
							cout << "*                                          *\n";
							cout << "*            1 - Forca                     *\n"; 
							cout << "*            2 - Defesa                    *\n";
							cout << "*            3 - Agilidade                 *\n";
							cout << "*                                          *\n";
							cout << "********************************************\n";
							cin >> atri;
									
							switch(atri)
							{
								
								case '1':
									system("cls");
									
											{
									
									
										
										cout << "********************************************\n";
										cout << "*                  1.3                     *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*                FIM DE JOGO               *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
											}
											break;
									
										
										
											case '2':
											system("cls");
											{
									
										
										cout << "********************************************\n";
										cout << "*                   2.3                    *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*               FIM DE JOGO                *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
											}
										break;
										
									
											
										
											case '3':
											system("cls");
											{
										
									
										
										cout << "********************************************\n";
										cout << "*                   3.3                    *\n";
										cout << "********************************************\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n"; 
										cout << "*               FIM DE JOGO                *\n";
										cout << "*                                          *\n";
										cout << "*                                          *\n";
										cout << "********************************************\n";
										system("pause");
										system("cls");
										
											}
									break;
							}
						}
							}
						}
							}
						}
		}
}

 

  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Odgii     o switch está funcionando certo ,  mas se digitar a letra  a  minúscula ele considera que é diferente  do    A  maiúsculo  e por isso ele passa ,  então para que funcione bem seria melhor você passar o que foi digitado para maiúsculo , assim se digitar minúsculo vai funcionar bem também ,  nesse trecho :

		cin >> op_time;
			case 1:
				system("cls");
					cout << "********************************************\n";
					cout << "*              Escolha Seu Time            *\n";
					cout << "********************************************\n";
					cout << "*                                          *\n";
					cout << "*            A - Fogo                      *\n";
					cout << "*            B - Agua                      *\n";
					cout << "*            C - Planta                    *\n";
					cout << "*                                          *\n";
					cout << "********************************************\n";
					cin >> op_time;

                    op_time=toupper(op_time);/* /<-- colocar essa linha que passa de minúsculo para maiúsculo */

					switch (op_time)
						{
							case 'A':
							system("cls");
							cout << "********************************************\n";
							cout << "*          Escolha Com o Que Combater      *\n";
							cout << "********************************************\n";

mas se você usar funções para fazer seu código , creio que ele ficaria mais bem organizado ,  colocando as chamadas das funções dentro do switch .

  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@devair1010 Obrigado, mais tipo quando eu coloco exemplo B ou C  não continua o Programa.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Odgii      seu código está bom , mas com muitos switch um dentro do outro se tornou confuso ,  então organizando ele poderia ser assim  :

#include <iostream>
#include <conio.h>
#include <string>
#include <stdlib.h>
#include <windows.h>
/*             0     1    2     3   4      5      6      7         8  */
typedef enum{black,blue,green,cyan,red,magenta,brown,lightgray,darkgray,   /* nome das cores */
lightblue,lightgreen,lightcyan,lightred,lightmagenta,yellow,white} colors;
/*  9         10         11        12        13         14    15 */

static int __BACKGROUND = 1/*BLACK*/;/*pode ser o numero ou o nome da cor*/
static int __FOREGROUND = lightgray;

void textcolor_2 (int letras, int fundo){/*para mudar a cor de fundo mude o background*/
    __FOREGROUND = letras;
    __BACKGROUND = fundo;
    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
    letras + (__BACKGROUND << 4));
}
                  /* y = linha de 0 a 24 , x = coluna de 0 a 80 */
void gotoxy_2(int x, int y){/*imprimir na linha e coluna desejada */
  COORD c;
  c.X = x;
  c.Y = y;
  SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
int som(int f){
    Beep(f,150);/* primeiro a frquência depois o tempo de duração do som */
    return 0;
}
using namespace std;
int op;
char op_time, atri;
// Arrays e valores pokemon
// Os Arrays são: Força, Defesa, Velocidade.
int charmander [4] = {4,3,5};
int charmeleon [4] = {3,3,4};
int charizard  [4] = {4,3,5};

int squirtle   [4] = {3,3,2};
int wartotle   [4] = {3,4,3};
int blastoise  [4] = {4,4,4};

int bulbasaur  [4] = {3,2,3};
int ivysaur    [4] = {3,3,3};
int Venusaur   [4] = {4,4,4};
void texto(){
    cout << "********************************************\n";
    cout << "*                                          *\n";
    cout << "********************************************\n";
    cout << "*                                          *\n";
    cout << "*                                          *\n";
    cout << "*                                          *\n";
    cout << "*                                          *\n";
    cout << "*                                          *\n";
    cout << "*                                          *\n";
    cout << "*                                          *\n";
    cout << "*                                          *\n";
    cout << "********************************************\n";
}
void Desenvolvedores(){
    textcolor_2(10,0);
    texto();
    gotoxy_2(12,1);cout << "Desenvoveldores\n";
    gotoxy_2(11,5);cout << "EM PROCESSO\n";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void fogo_Forca(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "1";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void fogo_Defesa(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "2";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void fogo_Agilidade(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "3";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void agua_Forca(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "1.2";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}

void agua_Defesa(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "2.2";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void agua_Agilidade(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "3.2";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void planta_Forca(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "1.3";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void planta_Defesa(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "2.3";
    gotoxy_2(11,5);cout << "*FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void planta_Agilidade(){
    system("cls");
    texto();
    gotoxy_2(21,1);cout << "3.3";
    gotoxy_2(11,5);cout << "FIM DE JOGO";
    gotoxy_2(11,12);
    cout<<"     Tecle !";
    getch();
}
void menu_dom(){
    system("cls");
    texto();
    gotoxy_2(15,1);cout << "Escolha Com o Que Combater";
    gotoxy_2(11,7);cout << "1 - Forca";
    gotoxy_2(11,8);cout << "2 - Defesa";
    gotoxy_2(11,9);cout << "3 - Agilidade";
    gotoxy_2(11,12);
    cin >> atri;
}
void Fogo(){
    menu_dom();
    switch(atri){
    case '1':
        fogo_Forca();
        break;
    case '2':
        fogo_Defesa();
        break;
    case '3':
        fogo_Agilidade();
        break;
    }
}
void Agua(){
    menu_dom();
    switch(atri){
    case '1':
        agua_Forca();
        break;
    case '2':
        agua_Defesa();
        break;
    case '3':
        agua_Agilidade();
        break;
    }
}
void Planta(){
    menu_dom();
    switch(atri){
    case '1':
        planta_Forca();
        break;
    case '2':
        planta_Defesa();
        break;
    case '3':
        planta_Agilidade();
    }
}
void Iniciar_Jogo(){
    textcolor_2(11,0);
    texto();
	gotoxy_2(15,1);cout << "Escolha Seu Time";
    gotoxy_2(11,7);cout << "A - Fogo";
    gotoxy_2(11,8);cout << "B - Agua";
    gotoxy_2(11,9);cout << "C - Planta";
    gotoxy_2(11,12);
    cin >> op_time;
    op_time=toupper(op_time);
    switch (op_time){
    case 'A':
        Fogo();
		break;
    case 'B':
        Agua();
        break;
    case 'C':
        Planta();
        break;
    }
}
void Como_Jogar(){
    textcolor_2(9,15);;
    system("cls");
    texto();
    textcolor_2(9,14);
    gotoxy_2(12,1);cout << "Como Jogar";
    gotoxy_2(11,5);cout << "EM PROCESSO";
    gotoxy_2(11,12);cout<<"    Tecle !";
    getch();
}
int main(){
    som(800);
    do{
        textcolor_2(14,0);
        system("cls");
        texto();
        gotoxy_2(12,1);cout << "Super Trunfo Pokemon";
        gotoxy_2(11,5);cout << "1 - Iniciar Jogo";
        gotoxy_2(11,6);cout << "2 - Como Jogar";
        gotoxy_2(11,7);cout << "3 - Desenvolvedores";
        gotoxy_2(11,8);cout << "4 - Sair";
        gotoxy_2(5,12);cout <<"Escolha -> ";
        cin >> op;
        system("cls");
        switch(op){
        case 1:
            Iniciar_Jogo();
            break;
        case 2:
            Como_Jogar();
            break;
        case 3:
            Desenvolvedores();
            break;
        case 4:
            textcolor_2(10,12);
            cout<<"\n\n      Saindo . . . !  \n\n"<<endl;
        }
    }while(op!=4);
    som(800);
    textcolor_2(15,0);
    return 0;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: minicurso “Como ganhar dinheiro montando computadores”

Gabriel TorresGabriel Torres, fundador e editor executivo do Clube do Hardware, acaba de lançar um minicurso totalmente gratuito: "Como ganhar dinheiro montando computadores".

Você aprenderá sobre o quanto pode ganhar, como cobrar, como lidar com a concorrência, como se tornar um profissional altamente qualificado e muito mais!

Inscreva-se agora!