Ir ao conteúdo

Posts recomendados

Postado

Olá, este é um programa que recebe um número inteiro positivo não nulo correspondente ao tamanho da lista de números fornecida pelo usuário. Em seguida, ele recebe todos os números da lista e devolve o menor e o maior deles.

#include <iostream>
#include <locale.h>
using namespace std;
int main () {
	int lista, n, cont, menor, maior; 
	cout << "Digite o tamanho da lista: ";
	cin >> lista;
	maior = 0;
	menor = 100;
	for (int i = 1; i <= lista; i ++) {
        int n;
        cout << "Digite o numero " << i << ": ";
        cin >> n;
        if (n < menor) {
            menor = n;
        }
        else if (n > maior) {
		maior = n;
		}
        
    }
    cout << "menor: " << menor << endl;
    cout << "maior: " << maior << endl;
return 0;
}

Fiz o code assim, mas queria saber outro jeito de mostrar o maior e menor número da lista.

 

Postado

Pode utilizar aquele INT_MAX e INT_MIN o código fica bem fácil de entender

 

#include <iostream>
#include <climits> // Para usar INT_MAX e INT_MIN

int main() {
    int quantidadeNumeros;
    std::cout << "Digite quantos numeros voce quer inserir: ";
    std::cin >> quantidadeNumeros;

    if (quantidadeNumeros <= 0) {
        std::cout << "Quantidade de numeros invalida. Saindo do programa.\n";
        return 1;
    }

    int numero;
    int maior = INT_MIN; // Inicializa com o menor valor possível
    int menor = INT_MAX; // Inicializa com o maior valor possível

    for (int i = 0; i < quantidadeNumeros; ++i) {
        std::cout << "Digite o numero " << (i + 1) << ": ";
        std::cin >> numero;

        // Verifica se o número é maior ou menor que os valores já encontrados
        if (numero > maior) {
            maior = numero;
        }
        if (numero < menor) {
            menor = numero;
        }
    }

    std::cout << "O maior numero e: " << maior << std::endl;
    std::cout << "O menor numero e: " << menor << std::endl;

    return 0;
}

 

esse é um exemplo do chatGPT e como é um código bem simples se você quiser outras maneiras de reproduzir esse mesmo código o chatGPT pode ser uma boa ferramenta para isso.

Postado

@rafaznj Assim se os números forem todos maiores que 100 pode retornar o valor errado, p.ex para entradas nesta ordem: 102, 101, 103. Vai mostrar que o menor é 100. Para evitar isso você pode pedir o valor antes de entrar no loop e já atribuir isso a menor e maior,

 

cout << "Digite o numero 1: ";
cin >> n;
menor = n;
maior = n;

for (int i = 2; i <= lista; i ++) {
    cout << "Digite o numero " << i << ": ";
...

 

  • Curtir 2
  • 9 meses depois...
Postado

@rafaznj

Boar Terde!

 

Em 22/07/2023 às 10:48, rafaznj disse:

Fiz o code assim, mas queria saber outro jeito de mostrar o maior e menor número da lista.

 

Essa dificuldade está em definir o valor que desencadeia o fluxo de comparações e produz o maior e o menor valor\número.

 

Essa talvez seja a questão.

 

— Como definir inicialmente o referêncial de maior e o menor?

Alguns suponha não haver limites, então, o primeiro e o único valor de uma lista é simultaneamente o maior e o menor dessa lista de um valor. Esse é caso que inspira a solução acima (#3) e por exemplo:

 

C++

#include <iostream>
#include <locale.h>
using namespace std;
int main () {
	int lista= 0, n, cont, menor, maior; 
	cout << "Digite o tamanho da lista: ";
	cin >> lista;
	for (int i= 1; i<=lista ; i ++) {
        int n;
        cout << "Digite o numero " << i << ": ";
        cin >> n;
        switch (i) {
            case 1:
            maior= menor= n;
            break;
            default:
            if (n<menor) menor= n;
            if (n>maior) maior= n;
            break;
            }}
    if (lista)  cout << "menor: " << menor << endl ,
                cout << "maior: " << maior << endl;
    return 0;
    }

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...