Boa tarde, estou com problemas nesse código. O programa não passa para as perguntas de horários...o que me parece é que o switch case não reconhece a resposta anterior como verdadeira então não passa para a próxima etapa e repete. Mas já tentei de todo jeito e não consigo arrumar, Alguém pode me dar uma luz por favor ?
int main() { //declaração de variáveis// char nome[40], curitiba[40], florianopolis[40], saobento[40], camboriu[40], matinhos[40], convencional[40], executivo [40];
int rg, codcontrole, viagem, horario, origem, destino, opcaobus, horarios;
//espaço destinado para apresentação do programa//
//variaveis recebendo dados//
codcontrole = 1;
//Laço de Retorno do { //Aqui o Programa pergunta a origem do passageiro printf("\nDe onde voce esta partindo? [1]curitiba, [2]florianopolis, [3]saobento, [4]camboriu ou [5]matinhos?\n"); scanf("%d", &origem);
//Aqui o Programa pergunta o destino do passageiro printf("\nQual e seu destino? [1]curitiba, [2]florianopolis, [3]saobento, [4]camboriu ou [5]matinhos?\n"); scanf("%d", &destino);
//Aqui o Programa pergunta o tipo de onibus printf("\nQual o tipo de onibus ? [1]Convencional ou [2]Executivo?\n"); scanf("%d", &opcaobus); if (origem == 1 && destino == 2 && opcaobus == 1) viagem = 1; else if (origem == 1 && destino == 2 && opcaobus == 2) viagem = 2; else if (origem == 1 && destino == 3 && opcaobus == 1) viagem = 3; else if (origem == 1 && destino == 3 && opcaobus == 2) viagem = 4; else if (origem == 1 && destino == 4 && opcaobus == 1) viagem = 5; else if (origem == 1 && destino == 4 && opcaobus == 2) viagem = 6; else if (origem == 1 && destino == 5 && opcaobus == 1) viagem = 7; else if (origem == 1 && destino == 5 && opcaobus == 2) viagem = 8; else if (origem == 2 && destino == 1 && opcaobus == 1) viagem = 9; else if (origem == 2 && destino == 1 && opcaobus == 2) viagem = 10; else if (origem == 2 && destino == 3 && opcaobus == 1) viagem = 11; else if (origem == 2 && destino == 3 && opcaobus == 2) viagem = 12; else if (origem == 2 && destino == 4 && opcaobus == 1) viagem = 13; else if (origem == 2 && destino == 4 && opcaobus == 2) viagem = 14; else if (origem == 2 && destino == 5 && opcaobus == 1) viagem = 15; else if (origem == 2 && destino == 5 && opcaobus == 2) viagem = 16; else if (origem == 3 && destino == 1 && opcaobus == 1) viagem = 17; else if (origem == 3 && destino == 1 && opcaobus == 2) viagem = 18; else if (origem == 3 && destino == 2 && opcaobus == 1) viagem = 19; else if (origem == 3 && destino == 2 && opcaobus == 2) viagem = 20; else if (origem == 3 && destino == 4 && opcaobus == 1) viagem = 21; else if (origem == 3 && destino == 4 && opcaobus == 2) viagem = 22; else if (origem == 3 && destino == 5 && opcaobus == 1) viagem = 23; else if (origem == 3 && destino == 5 && opcaobus == 2) viagem = 24; else if (origem == 4 && destino == 1 && opcaobus == 1) viagem = 25; else if (origem == 4 && destino == 1 && opcaobus == 2) viagem = 26; else if (origem == 4 && destino == 2 && opcaobus == 1) viagem = 27; else if (origem == 4 && destino == 2 && opcaobus == 2) viagem = 28; else if (origem == 4 && destino == 3 && opcaobus == 1) viagem = 29; else if (origem == 4 && destino == 3 && opcaobus == 2) viagem = 30; else if (origem == 4 && destino == 5 && opcaobus == 1) viagem = 31; else if (origem == 4 && destino == 5 && opcaobus == 2) viagem = 32; else if (origem == 5 && destino == 1 && opcaobus == 1) viagem = 33; else if (origem == 5 && destino == 1 && opcaobus == 2) viagem = 34; else if (origem == 5 && destino == 2 && opcaobus == 1) viagem = 35; else if (origem == 5 && destino == 2 && opcaobus == 2) viagem = 36; else if (origem == 5 && destino == 3 && opcaobus == 1) viagem = 37; else if (origem == 5 && destino == 3 && opcaobus == 2) viagem = 38; else if (origem == 5 && destino == 4 && opcaobus == 1) viagem = 39; else if (origem == 5 && destino == 4 && opcaobus == 2) viagem = 40; else printf("\nUma ou mais respostas são invalidas!\n"); //Aqui o Programa pergunta o horario da partida switch (horarios) { case 1: viagem = 1; printf("Digite 1 para 10:40 ou 2 para 17:00"); scanf("%d", &horario); break; case 2: viagem = 2; printf("Digite 1 para 11:00 ou 2 para 15:40"); scanf("%d", &horario); break; case 3: viagem = 3; printf("Digite 1 para 13:30 ou 2 para 09:30"); scanf("%d", &horario); break; case 4: viagem = 4; printf("Digite 1 para 12:00 ou 2 para 14:00"); scanf("%d", &horario); break; } //Aqui o Programa da o preço e pede os dados
Pergunta
Visitante
Boa tarde, estou com problemas nesse código. O programa não passa para as perguntas de horários...o que me parece é que o switch case não reconhece a resposta anterior como verdadeira então não passa para a próxima etapa e repete. Mas já tentei de todo jeito e não consigo arrumar, Alguém pode me dar uma luz por favor ?
#include <cstdio>
#include <stdlib.h>
#include <math.h>
#include <conio.h>
#include <iostream>
#include <cstdlib>
#include <stdio.h>
int main() {
//declaração de variáveis//
char nome[40], curitiba[40], florianopolis[40],
saobento[40], camboriu[40], matinhos[40], convencional[40], executivo [40];
int rg, codcontrole, viagem, horario, origem, destino, opcaobus, horarios;
//espaço destinado para apresentação do programa//
//variaveis recebendo dados//
codcontrole = 1;
//Laço de Retorno
do {
//Aqui o Programa pergunta a origem do passageiro
printf("\nDe onde voce esta partindo? [1]curitiba, [2]florianopolis, [3]saobento, [4]camboriu ou [5]matinhos?\n");
scanf("%d", &origem);
//Aqui o Programa pergunta o destino do passageiro
printf("\nQual e seu destino? [1]curitiba, [2]florianopolis, [3]saobento, [4]camboriu ou [5]matinhos?\n");
scanf("%d", &destino);
//Aqui o Programa pergunta o tipo de onibus
printf("\nQual o tipo de onibus ? [1]Convencional ou [2]Executivo?\n");
scanf("%d", &opcaobus);
if
(origem == 1 && destino == 2 && opcaobus == 1)
viagem = 1;
else if (origem == 1 && destino == 2 && opcaobus == 2)
viagem = 2;
else if (origem == 1 && destino == 3 && opcaobus == 1)
viagem = 3;
else if (origem == 1 && destino == 3 && opcaobus == 2)
viagem = 4;
else if (origem == 1 && destino == 4 && opcaobus == 1)
viagem = 5;
else if (origem == 1 && destino == 4 && opcaobus == 2)
viagem = 6;
else if (origem == 1 && destino == 5 && opcaobus == 1)
viagem = 7;
else if (origem == 1 && destino == 5 && opcaobus == 2)
viagem = 8;
else if (origem == 2 && destino == 1 && opcaobus == 1)
viagem = 9;
else if (origem == 2 && destino == 1 && opcaobus == 2)
viagem = 10;
else if (origem == 2 && destino == 3 && opcaobus == 1)
viagem = 11;
else if (origem == 2 && destino == 3 && opcaobus == 2)
viagem = 12;
else if (origem == 2 && destino == 4 && opcaobus == 1)
viagem = 13;
else if (origem == 2 && destino == 4 && opcaobus == 2)
viagem = 14;
else if (origem == 2 && destino == 5 && opcaobus == 1)
viagem = 15;
else if (origem == 2 && destino == 5 && opcaobus == 2)
viagem = 16;
else if (origem == 3 && destino == 1 && opcaobus == 1)
viagem = 17;
else if (origem == 3 && destino == 1 && opcaobus == 2)
viagem = 18;
else if (origem == 3 && destino == 2 && opcaobus == 1)
viagem = 19;
else if (origem == 3 && destino == 2 && opcaobus == 2)
viagem = 20;
else if (origem == 3 && destino == 4 && opcaobus == 1)
viagem = 21;
else if (origem == 3 && destino == 4 && opcaobus == 2)
viagem = 22;
else if (origem == 3 && destino == 5 && opcaobus == 1)
viagem = 23;
else if (origem == 3 && destino == 5 && opcaobus == 2)
viagem = 24;
else if (origem == 4 && destino == 1 && opcaobus == 1)
viagem = 25;
else if (origem == 4 && destino == 1 && opcaobus == 2)
viagem = 26;
else if (origem == 4 && destino == 2 && opcaobus == 1)
viagem = 27;
else if (origem == 4 && destino == 2 && opcaobus == 2)
viagem = 28;
else if (origem == 4 && destino == 3 && opcaobus == 1)
viagem = 29;
else if (origem == 4 && destino == 3 && opcaobus == 2)
viagem = 30;
else if (origem == 4 && destino == 5 && opcaobus == 1)
viagem = 31;
else if (origem == 4 && destino == 5 && opcaobus == 2)
viagem = 32;
else if (origem == 5 && destino == 1 && opcaobus == 1)
viagem = 33;
else if (origem == 5 && destino == 1 && opcaobus == 2)
viagem = 34;
else if (origem == 5 && destino == 2 && opcaobus == 1)
viagem = 35;
else if (origem == 5 && destino == 2 && opcaobus == 2)
viagem = 36;
else if (origem == 5 && destino == 3 && opcaobus == 1)
viagem = 37;
else if (origem == 5 && destino == 3 && opcaobus == 2)
viagem = 38;
else if (origem == 5 && destino == 4 && opcaobus == 1)
viagem = 39;
else if (origem == 5 && destino == 4 && opcaobus == 2)
viagem = 40;
else
printf("\nUma ou mais respostas são invalidas!\n");
//Aqui o Programa pergunta o horario da partida
switch (horarios) {
case 1:
viagem = 1;
printf("Digite 1 para 10:40 ou 2 para 17:00");
scanf("%d", &horario);
break;
case 2:
viagem = 2;
printf("Digite 1 para 11:00 ou 2 para 15:40");
scanf("%d", &horario);
break;
case 3:
viagem = 3;
printf("Digite 1 para 13:30 ou 2 para 09:30");
scanf("%d", &horario);
break;
case 4:
viagem = 4;
printf("Digite 1 para 12:00 ou 2 para 14:00");
scanf("%d", &horario);
break;
}
//Aqui o Programa da o preço e pede os dados
//Aqui o Programa Le os Dados do Cliente
//Impressao da Passagem
} while (codcontrole !=9999);
}
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.