Boa noite! Essa é minha primeira vez utilizando o fórum, embora eu já o tenha consultado diversas vezes no passado.
Estou tendo um problema em parte do desenvolvimento de um programa para uma tarefa da disciplina de Programação 1. A entrega dela é só pra daqui a 2 semanas, então estou tranquilo quanto ao prazo.
Parte da tarefa:
Implementar um programa C que recebe as três cores de um resistor e imprime o valor do mesmo em ohms. Não usar arranjos ou repetições (ainda não tivemos). USAR comando switch e variáveis do tipo char para receber a cor. Fazer somente as cores preto, marrom, vermelho e amarelo. Usar caracteres 'p', 'm', 'v' e 'a' para identificar as cores.
Bom... Meu código está basicamente pronto. Escrevi ele no Visual Studio Code e compilei com o GCC.
O programa lê corretamente a primeira cor, mas ele pula a leitura da segunda cor e vai direto para a leitura da terceira. Aí ele acaba fazendo o cálculo da resistência apenas com a primeira e terceira cor. Fiz uma função printf para mostrar o que está dentro da variável cor2, e está aparecendo que é um espaço em branco, o que acaba jogando pro caso default, retornando a frase "Valor inválido2".
Sou iniciante em C. Estou começando há poucos dias e essa foi minha primeira dificuldade, mas não consegui resolver de forma alguma. Estou utilizando uma sequência de três comandos switch, cada um com 4 casos (p, m, v e a). Já chequei, não está faltando ponto e vírgula e todos os casos estão sendo fechados por "break;". Não tenho ideia de qual é o problema.
Segue o arquivo do meu programa em anexo.
É isso... Agradeço desde já!
resistor2.txt