Para resolver este problema vamos usar um camando de verificação if aninhados, isso garante (neste caso) um melhor processamento, pois em menas comparações obteremos o resultado esperado. Veja:
Primeiro obtemos os 3 valores. Logo após comparamos o primeiro com o segundo, se o primeiro for menor, comparamos com o terceiro, caso o primeiro for menor, temos que o Primeiro valor lido é o menor dos 3, caso contrario, então o terceiro valor é o menor dentre os 3.
Se não for o caso anterior, sabemos que o segundo valor lido é menor que o primeiro, e então basta compara com o terceiro, se menor que o terceiro temos que o segundo valor lido é o menor.
Caso não satisfaça o modelo anterior, quer dizer que temos pelo menos 2 valor iguais.
#include<stdio.h>
int main(){
int valor1, valor2, valor3;
printf("Informe o 1o valor: ");
scanf("%d", &valor1);
printf("\n");
printf("Informe o 2o valor: ");
scanf("%d", &valor2);
printf("\n");
printf("Informe o 3o valor: ");
scanf("%d", &valor3);
printf("\n");
if(valor1 < valor2){
if(valor1 < valor3){
printf("1o valor informado e o menor");
} else {
printf("3o valor informado e o menor");
}
} else if(valor2 < valor3) {
printf("2o valor informado e o menor");
} else {
printf("Tem dois ou mais valores iguais.");
}
printf("\n");
return 0;
}
algoritmo "valores"
// Função : construa um algaritimo que receba como entrada tres valores e
// escreva o menor deles
// Autor : Edneide
// Data : 10/11/2017
// Seção de Declarações
var
A, B, C: inteiro
menor: inteiro
inicio
// Seção de Comandos
Escreval ("Digite um valor para A")
Leia (A)
Escreval ("Digite um valor para B")
Leia (B)
Escreval ("Digite um valor para C")
Leia (C)
Se (A < B) E (A < C) Entao
Menor <- A
Senao
Se B < C Entao
Menor <- B
Senao
Menor <- C
Fim se
Fimse
Fimse
Escreva (Menor)
fimalgoritmo
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar