Construir um programa em C que leia um número e imprima se ele é igual a 5 , a 200 , a 400, se está no intervalo entre 500 e 1000, inclusive, ou se ela está fora dos escopos anteriores.
Passo 1
O enunciado pede um programa em C que leia um número inteiro e indique qual das seguintes situações ocorre:
- É igual a 5.
- É igual a 200.
- É igual a 400.
- Está no intervalo entre 500 e 1000, inclusive.
- Não se enquadra em nenhuma das opções anteriores.
O conteúdo aqui é tomada de decisão usando estruturas de seleção (if/else if/else).
Passo 2
Começamos declarando uma variável para armazenar o número lido. Em seguida, usamos a função
scanf
para ler do teclado um valor inteiro.Passo 3
Usamos um encadeamento de
if
e else if
para testar cada caso em ordem. Primeiro verificamos se o número é igual a 5:if (num \(==5\)) {
// trata caso igual a 5
}
Se não for igual a 5, passamos a verificar se é igual a 200 e, em seguida, se é igual a 400, cada um num
else if
distinto:else if (num \(==200\)) {
// trata caso igual a 200
}
else if (num \(==400\)) {
// trata caso igual a 400
}
Caso não seja nenhum dos valores exatos, testamos se está no intervalo de 500 a 1000, inclusive, usando o operador lógico
&&
:else if (num >\(=500\) && num <\(=1000\)) {
// trata o intervalo [500,1000]
}
Passo 4
Se nenhuma das condições anteriores for satisfeita, cairemos no
else
final, imprimindo que o número está fora dos escopos definidos.Resposta
#include <stdio.h>
int main(void) {
int num;
printf("Informe um numero inteiro: ");
if (scanf("%d", &num) !\(=1\)) {
printf("Erro na leitura
");
return 1;
}
if (num \(==5\)) {
printf("O numero e igual a 5.
");
}
else if (num \(==200\)) {
printf("O numero e igual a 200.
");
}
else if (num \(==400\)) {
printf("O numero e igual a 400.
");
}
else if (num >\(=500\) && num <\(=1000\)) {
printf("O numero esta no intervalo entre 500 e 1000, inclusive.
");
}
else {
printf("O numero esta fora dos escopos anteriores.
");
}
return 0;
}