Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

LucasPS

[Resolvido] exercicio de trabalho

Recommended Posts

Bom galera, eu tenho que fazer um exercicio que o usuario digita a idade e o programa classifica em um categoria por idade, só que fiz algo errado e qualquer idade ele mostra a mesma categoria, vejam o que eu fiz errado :/

#include <stdio.h>
void main(){
	int x;
	printf("Informe a idade do nadador: ");
	scanf("%d",&x);
	if((x>=5) || (x<=7)){
		printf("\nCategoria Infantil A.");
	} else {
		if ((x>=8) || (x<=10)){
		printf("\nCategoria Infantil B.");
		} else {
			if((x>=11) || (x<=13)){
				printf("\nCategoria Juvenil A.");
			} else {
				if((x>=14) || (x<=17)){
					printf("\nCategoria Juvenil B.");
				} else printf("\nCategoria Adulto.");
			}
		}
	}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

A tua lógica está errada, a comparação entre as idades deve ser "&&". Veja a primeira, se x for maior ou igual a 5 OU x maior ou igual a 7...vai sempre dar errado, se você digitar 15, 15 é maior x e como está usando OU, a outra expressão é descartada :D

 

Lembre-se das operações lógicas, no caso do OU apenas uma expressão deve retornar verdadeiro....no caso do E ambas devem retornar verdadeiro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seria assim entao?

#include <stdio.h>
void main(){
	int x;
	printf("Informe a idade do nadador: ");
	scanf("%d",&x);
	if((x>=5) || (x<=7)){
		printf("\nCategoria Infantil A.");
	} else if ((x>=8) || (x<=10)){
		printf("\nCategoria Infantil B.");
		} else if((x>=11) || (x<=13)){
				printf("\nCategoria Juvenil A.");
			} else if((x>=14) || (x<=17)){
					printf("\nCategoria Juvenil B.");
				} else printf("\nCategoria Adulto.");
}
mas continua mostrando a mesma caterogira para todas as idades :x

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu editei a minha resposta, o problema era outro...na verdade acho que da forma que você colocou os if else tava mais otimizado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exato :D

São chamados de Operadores Lógicos. Existe ainda o "!", que significa "NÃO".

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.