Crie um algoritmo e um programa que leia 5 números e mostre o maior e o menor.

algoritmo giovani loop

Fala galera da programação, tudo beleza?

No exercício de hoje vamos fazer um algoritmo que leia cinco números. Ao final da leitura, devemos mostrar o maior e o menor.

Dica: Você deve utilizar um laço no exercício!

 

Vamos aos códigos!

 

Exemplo em C++

/***********************************

Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br

**********************************/

#include <iostream>
using namespace std;

int main() {
    // Declaração de variáveis
    int numero, maior, menor;

    // Solicitação do primeiro número
    cout << "Digite o 1º número: ";
    cin >> numero;

    // Inicializa maior e menor com o primeiro número lido
    maior = menor = numero;

    // Leitura e comparação dos próximos números
    for (int i = 2; i <= 5; ++i) {
        cout << "Digite o " << i << "º número: ";
        cin >> numero;

        // Atualização do maior e menor, se necessário
        if (numero > maior) {
            maior = numero;
        } else if (numero < menor) {
            menor = numero;
        }
    }

    // Exibição do resultado
    cout << "O maior número é: " << maior << endl;
    cout << "O menor número é: " << menor << endl;

    return 0;
}

Este programa utiliza um loop (laço) for para ler os cinco números, comparando cada número com as variáveis maior e menor. O resultado final é exibido ao usuário.

 

Exemplo em C

/******************************************************************************

Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br

*******************************************************************************/
#include <stdio.h>

int main() {
    // Declaração de variáveis
    int numero, maior, menor;

    // Solicitação do primeiro número
    printf("Digite o 1º número: ");
    scanf("%d", &numero);

    // Inicializa maior e menor com o primeiro número lido
    maior = menor = numero;

    // Leitura e comparação dos próximos números
    for (int i = 2; i <= 5; ++i) {
        printf("Digite o %dº número: ", i);
        scanf("%d", &numero);

        // Atualização do maior e menor, se necessário
        if (numero > maior) {
            maior = numero;
        } else if (numero < menor) {
            menor = numero;
        }
    }

    // Exibição do resultado
    printf("O maior número é: %d\n", maior);
    printf("O menor número é: %d\n", menor);

    return 0;
}

As principais diferenças em C incluem a substituição de cout e cin por printf e scanf, respectivamente, e a eliminação do uso do espaço de nomes std. O restante do código permanece muito semelhante ao exemplo em C++

 

Exemplo em Pascal

{

Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br

}
program MaiorMenor;

var
  numero, maior, menor: integer;
  i: integer;

begin
  // Solicitação do primeiro número
  Write('Digite o 1º número: ');
  Readln(numero);

  // Inicializa maior e menor com o primeiro número lido
  maior := numero;
  menor := numero;

  // Leitura e comparação dos próximos números
  for i := 2 to 5 do
  begin
    Write('Digite o ', i, 'º número: ');
    Readln(numero);

    // Atualização do maior e menor, se necessário
    if numero > maior then
      maior := numero
    else if numero < menor then
      menor := numero;
  end;

  // Exibição do resultado
  Writeln('O maior número é: ', maior);
  Writeln('O menor número é: ', menor);
end.

O código em Pascal segue uma estrutura semelhante à versão em C++, mas com a sintaxe específica da linguagem Pascal. O programa solicita a entrada do usuário, compara os números e exibe o resultado, usando Write, Readln e Writeln para manipular a entrada/saída.

 

Exemplo em Python

'''

Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br

'''
# Solicitação do primeiro número
numero = int(input("Digite o 1º número: "))

# Inicializa maior e menor com o primeiro número lido
maior = menor = numero

# Leitura e comparação dos próximos números
for i in range(2, 6):
    numero = int(input(f"Digite o {i}º número: "))

    # Atualização do maior e menor, se necessário
    if numero > maior:
        maior = numero
    elif numero < menor:
        menor = numero

# Exibição do resultado
print(f"O maior número é: {maior}")
print(f"O menor número é: {menor}")

Em Python, a entrada do usuário é obtida usando a função input(), e para garantir que a entrada seja tratada como um número inteiro, utilizamos a função int(). O loop for é usado para iterar sobre os próximos números, e a lógica para encontrar o maior e o menor é semelhante ao exemplo em C++ e Pascal. As funções print() são usadas para exibir os resultados.

 

Exemplo em C#

/******************************************************************************

Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br

*******************************************************************************/
using System;

class MaiorMenor
{
    static void Main()
    {
        // Solicitação do primeiro número
        Console.Write("Digite o 1º número: ");
        int numero = int.Parse(Console.ReadLine());

        // Inicializa maior e menor com o primeiro número lido
        int maior = numero;
        int menor = numero;

        // Leitura e comparação dos próximos números
        for (int i = 2; i <= 5; ++i)
        {
            Console.Write($"Digite o {i}º número: ");
            numero = int.Parse(Console.ReadLine());

            // Atualização do maior e menor, se necessário
            if (numero > maior)
            {
                maior = numero;
            }
            else if (numero < menor)
            {
                menor = numero;
            }
        }

        // Exibição do resultado
        Console.WriteLine($"O maior número é: {maior}");
        Console.WriteLine($"O menor número é: {menor}");
    }
}

Em C#, usamos Console.Write e Console.ReadLine para obter a entrada do usuário, e int.Parse para converter a entrada para um número inteiro. O restante do código segue uma lógica semelhante aos exemplos anteriores, com o uso do loop for para iterar sobre os números e a exibição dos resultados usando Console.WriteLine.

 

Exemplo em Java

/******************************************************************************

Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br

*******************************************************************************/
import java.util.Scanner;

public class MaiorMenor {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // Solicitação do primeiro número
        System.out.print("Digite o 1º número: ");
        int numero = scanner.nextInt();

        // Inicializa maior e menor com o primeiro número lido
        int maior = numero;
        int menor = numero;

        // Leitura e comparação dos próximos números
        for (int i = 2; i <= 5; ++i) {
            System.out.print("Digite o " + i + "º número: ");
            numero = scanner.nextInt();

            // Atualização do maior e menor, se necessário
            if (numero > maior) {
                maior = numero;
            } else if (numero < menor) {
                menor = numero;
            }
        }

        // Exibição do resultado
        System.out.println("O maior número é: " + maior);
        System.out.println("O menor número é: " + menor);

        // Fechar o scanner para evitar vazamentos de recursos
        scanner.close();
    }
}

Em Java, usamos a classe Scanner para obter a entrada do usuário e a classe System.out para exibir os resultados. O loop for é usado para iterar sobre os números, e a lógica para encontrar o maior e o menor é semelhante aos exemplos anteriores. É importante fechar o objeto Scanner no final para evitar vazamentos de recursos.

 

Exemplo em Rust

/******************************************************************************

Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br

*******************************************************************************/
use std::io;

fn main() {
    // Solicitação do primeiro número
    println!("Digite o 1º número:");
    let mut input = String::new();
    io::stdin().read_line(&mut input).expect("Falha ao ler a entrada");
    let numero: i32 = input.trim().parse().expect("Por favor, insira um número válido");

    // Inicializa maior e menor com o primeiro número lido
    let mut maior = numero;
    let mut menor = numero;

    // Leitura e comparação dos próximos números
    for i in 2..=5 {
        println!("Digite o {}º número:", i);
        input.clear();
        io::stdin().read_line(&mut input).expect("Falha ao ler a entrada");
        let numero: i32 = input.trim().parse().expect("Por favor, insira um número válido");

        // Atualização do maior e menor, se necessário
        if numero > maior {
            maior = numero;
        } else if numero < menor {
            menor = numero;
        }
    }

    // Exibição do resultado
    println!("O maior número é: {}", maior);
    println!("O menor número é: {}", menor);
}

 

Assuntos abordados aqui neste post:

  1. Variáveis: Armazenam os valores dos números, do maior e do menor.
  2. Entrada de Dados: Solicitação dos números ao usuário para análise.
  3. Estrutura de Controle: Utilização de estruturas condicionais e de repetição para controle do fluxo.
  4. Comparação: Verificação de qual número é o maior ou menor.
  5. Inicialização: Atribuição dos valores iniciais das variáveis.
  6. Loop: Iteração sobre os 5 números fornecidos pelo usuário.
  7. Saída de Dados: Exibição dos resultados para o usuário.
  8. Lógica de Programação: Desenvolvimento da lógica para determinar o maior e menor número.
  9. Tipos de Dados: Utilização de tipos inteiros para representar os números.
  10. Interatividade: Interação com o usuário por meio da entrada de dados e exibição de resultados.

 

Beleza pessoal? Espero que tenham gostado. Neste exercício adicionei o exemplo em Rust para a comparação.

 

Dúvidas ou sugestão de mais linguagens? Deixe o seu comentário!

 

Um abraço e até o próximo post. Valeu!

 

  • Publicado por Giovani Da Cruz
  • 205 views
  • 0 comentarios
  • 5 de fevereiro de 2024

 

Está gostando do conteúdo?
Considere pagar um cafezinho para nossa equipe!

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Posts Relacionados a Categoria Algoritmos com Laços

Continue aprendendo

Aumente o seu conhecimento
Crie um algoritmo e um programa que leia 5 números e escreva o maior e o menor desses 5 números, nessa ordem.
29 de abril de 2024
Crie um algoritmo e um programa que leia 5 números e informe o maior número
10 de abril de 2024
Crie um algoritmo e um programa que solicite ao usuário digitar seis números inteiros. O programa deverá somar os valores pares informados e mostrar o resultado desta soma na tela.
18 de fevereiro de 2024
Crie um algoritmo e um programa em que solicite ao usuário digitar sete números inteiros. O programa deverá contar e mostrar na tela a quantidade de valores ímpares informados.
15 de fevereiro de 2024
Crie um programa e um algoritmo para listar os 1000 primeiros números primos.
23 de janeiro de 2024
Crie um programa e um algoritmo para listar os 4 primeiros números perfeitos.
19 de janeiro de 2024
Crie um programa e um algoritmo para listar os 1000 primeiros números felizes.
4 de dezembro de 2023
Crie um algoritmo e um programa para descobrir os 100 primeiros naturais que possuam raízes quadradas inteiras
28 de novembro de 2023
Exercício de algoritmo: Sequência de Fibonacci
24 de novembro de 2023
Exemplo de como simular uma barra de progresso em modo console
15 de novembro de 2023