Ola pessoa, estava tentando fazer um algoritmo e leia 5 numeros e diga o maior e o menor, só que eu nao consigo fazer com 5 apenas com 3 numeros funciona, pf ajuda
Preciso de uma forma mais eficiente, como eu faria com 1000 numeros?ou mais
Ola pessoa, estava tentando fazer um algoritmo e leia 5 numeros e diga o maior e o menor, só que eu nao consigo fazer com 5 apenas com 3 numeros funciona, pf ajuda
Preciso de uma forma mais eficiente, como eu faria com 1000 numeros?ou mais
Faz com dois que é mais fácil:
public static int menor(int a, int b) { /** implementação **/ }
public static int maior(int a, int b) { /** implementação **/ }
public static int menor(int a, int b, int c, int d, int e) {
int menor = menor(a, b);
menor = menor(menor, c);
menor = menor(menor, d);
menor = menor(menor, e);
return menor;
}
Se for com 1000, use vetor ou lista:
int menor = vetor[0];
para cada elemento do vetor faça {
menor = menor(menor, vetor[i]);
}
return menor;
O típico caso de que só sabe responder à pergunta com laranjas, não com maçãs?
Quando você consegue repetir por 3 vezes, consegue por 10, 100, 10000 ou o que seja. Salvo se tem algo errado na lógica.
Algoritmo
declare
num, maior, menor, i : inteiro
inicio
maior <- (-1)
menor <- 999999999
para i de 1 ate 5 faça
escreval("Digite um numero")
leia(num)
se num > maior entao
maior <- num
fimse
se num < menor entao
menor <- num
fimse
fimpara
escreval("O menor número informado é: ", menor)
escreval("O maior número informado é: ", maior)
FimAlgoritmo
int menor(int a, int b) {
return a < b ? a : b;
}
int menor(int a, int b, int... n) {
int m = menor(a, b);
for (int x : n) {
m = menor(m, x);
}
return m;
}
pode fazer dessa forma com métodos no meu caso usei c++ (meu ide java esta com problemas)
#include <cstdlib>
#include <iostream>
using namespace std;
int vetor[4] = {0};
int retornaMaior(){
int maior = vetor[0];
for (int i = 0 ; i < 4; i++){
if (vetor[i] > maior){
maior = vetor[i];
}
}
return(maior);
}
int retornaMenor(){
int menor = vetor[0];
for (int i = 0 ; i < 4; i++){
if (vetor[i] < menor){
menor = vetor[i];
}
}
return(menor);
}
int main(int argc, char** argv) {
for (int i = 0 ; i < 4; i++){
cout << "digite o " << (i + 1) << "ª valor: "<< endl;
cin >> vetor[i];
}
cout << "maior valor:" << retornaMaior() << endl;
cout << "menor valor:" << retornaMenor() << endl;
return 0;
}