logotipo Blog Giovani Da Cruz
Algoritmos com Se, Senão e Caso

Exercício: maior de dois números inteiros

9 min de leitura · publicado em 20/02/2024 529 visualizações

algoritmo if else if

Fala galera da programação, tudo beleza? No exercício de hoje vamos fazer testes para descobrir qual valor é o maior. É bem interessante para treinamos a lógica de programação.

 

O que vamos aprender neste exercício?

Este exercício nos ajuda a praticar vários conceitos de programação, independentemente da linguagem escolhida. Aqui estão algumas lições que podemos aprender com este exercício:

  1. Entrada do usuário: Aprendemos como solicitar e ler entradas do usuário em diferentes linguagens de programação. Cada linguagem tem suas próprias maneiras de realizar entrada/saída de dados.
  2. Estruturas de controle: Praticamos o uso de estruturas de controle, como condicionais (if-else), para tomar decisões com base nos valores das variáveis.
  3. Tipos de dados: Lidamos com diferentes tipos de dados, como inteiros, e aprendemos como converter entre eles quando necessário.
  4. Conversão de tipos: Em algumas linguagens, como Rust, é necessário converter explicitamente os tipos de dados quando fazemos entrada do usuário, enquanto em outras, como Python, a conversão pode ser implícita.
  5. Exibição de saída: Aprendemos a exibir mensagens na tela para fornecer feedback ao usuário sobre os resultados do programa.
  6. Comparação de valores: Praticamos a comparação de valores para determinar o maior entre dois números e como lidar com casos em que os valores são iguais.

 

Dica do Exercício

Exemplo: se o usuário informar os números 15 e 43, deverá ser mostrado na tela a mensagem “Maior valor: 43”. Se o usuário informar os números 15 e 15, deverá ser mostrado na tela a mensagem “Dois números iguais foram informados”.

 

Vamos aos códigos!

 

Exemplo em C++

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

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

*******************************************************************************/
#include <iostream>
using namespace std;

int main() {
    int num1, num2;

    // Solicita ao usuário para digitar dois números inteiros
    cout << "Digite o primeiro número inteiro: ";
    cin >> num1;
    cout << "Digite o segundo número inteiro: ";
    cin >> num2;

    // Verifica qual é o maior número e imprime na tela
    if (num1 > num2) {
        cout << "Maior valor: " << num1 << endl;
    } else if (num2 > num1) {
        cout << "Maior valor: " << num2 << endl;
    } else {
        cout << "Dois números iguais foram informados." << endl;
    }

    return 0;
}

Este programa solicita ao usuário para digitar dois números inteiros, em seguida, verifica qual dos dois números é maior ou se são iguais, e imprime a mensagem correspondente na tela.

A estratégia utilizada neste programa foi bastante direta:

  1. Solicitar ao usuário que insira dois números inteiros.
  2. Armazenar esses números em variáveis.
  3. Comparar os números para determinar qual é o maior.
  4. Se um número for maior que o outro, imprimir o maior número na tela.
  5. Se os números forem iguais, imprimir uma mensagem indicando que são iguais.

Essa abordagem é bastante simples e eficaz para resolver o problema proposto. O código usa uma estrutura condicional (if-else) para determinar se o primeiro número é maior que o segundo, se o segundo número é maior que o primeiro, ou se os números são iguais. Dependendo do resultado da comparação, o programa imprime a mensagem apropriada na tela.

 

Exemplo em C

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

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

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

int main() {
    int num1, num2;

    // Solicita ao usuário para digitar dois números inteiros
    printf("Digite o primeiro número inteiro: ");
    scanf("%d", &num1);
    printf("Digite o segundo número inteiro: ");
    scanf("%d", &num2);

    // Verifica qual é o maior número e imprime na tela
    if (num1 > num2) {
        printf("Maior valor: %d\n", num1);
    } else if (num2 > num1) {
        printf("Maior valor: %d\n", num2);
    } else {
        printf("Dois números iguais foram informados.\n");
    }

    return 0;
}

Neste código em C, as funções printf e scanf são usadas para exibir mensagens na tela e ler entradas do usuário, respectivamente. O restante da lógica é bastante semelhante ao código em C++, onde os números inseridos são comparados para determinar o maior valor e uma mensagem apropriada é exibida com base nessa comparação.

 

Exemplo em Pascal / Delphi / Lazarus

{

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

}
program MaiorNumero;

var
  num1, num2: Integer;

begin
  // Solicita ao usuário para digitar dois números inteiros
  Write('Digite o primeiro número inteiro: ');
  ReadLn(num1);
  Write('Digite o segundo número inteiro: ');
  ReadLn(num2);

  // Verifica qual é o maior número e imprime na tela
  if num1 > num2 then
    WriteLn('Maior valor: ', num1)
  else if num2 > num1 then
    WriteLn('Maior valor: ', num2)
  else
    WriteLn('Dois números iguais foram informados.');

end.

Neste código em Pascal, Write é usado para exibir mensagens na tela e ReadLn é usado para ler as entradas do usuário. Assim como nos exemplos anteriores, a lógica é semelhante: os números inseridos são comparados para determinar o maior valor e uma mensagem apropriada é exibida com base nessa comparação.

 

Exemplo em Python

'''

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

'''

# Solicita ao usuário para digitar dois números inteiros
num1 = int(input("Digite o primeiro número inteiro: "))
num2 = int(input("Digite o segundo número inteiro: "))

# Verifica qual é o maior número e imprime na tela
if num1 > num2:
    print("Maior valor:", num1)
elif num2 > num1:
    print("Maior valor:", num2)
else:
    print("Dois números iguais foram informados.")

Neste código em Python, a função input é usada para receber entradas do usuário como strings, que são então convertidas em inteiros usando a função int. Em seguida, a lógica é a mesma dos exemplos anteriores: os números inseridos são comparados para determinar o maior valor e uma mensagem apropriada é exibida com base nessa comparação.

 

Exemplo em C# / C Sharp

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

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

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

class Program
{
    static void Main()
    {
        // Solicita ao usuário para digitar dois números inteiros
        Console.Write("Digite o primeiro número inteiro: ");
        int num1 = int.Parse(Console.ReadLine());
        
        Console.Write("Digite o segundo número inteiro: ");
        int num2 = int.Parse(Console.ReadLine());

        // Verifica qual é o maior número e imprime na tela
        if (num1 > num2)
        {
            Console.WriteLine("Maior valor: " + num1);
        }
        else if (num2 > num1)
        {
            Console.WriteLine("Maior valor: " + num2);
        }
        else
        {
            Console.WriteLine("Dois números iguais foram informados.");
        }
    }
}

Neste código em C#, utilizamos Console.Write e Console.ReadLine para solicitar e ler as entradas do usuário. Os números inseridos são então convertidos de string para inteiros usando int.Parse. Depois, a lógica é a mesma dos exemplos anteriores: os números são comparados para determinar o maior valor e uma mensagem apropriada é exibida com base nessa comparação.

 

Exemplo em Java

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

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

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

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

        // Solicita ao usuário para digitar dois números inteiros
        System.out.print("Digite o primeiro número inteiro: ");
        int num1 = scanner.nextInt();
        System.out.print("Digite o segundo número inteiro: ");
        int num2 = scanner.nextInt();

        // Verifica qual é o maior número e imprime na tela
        if (num1 > num2) {
            System.out.println("Maior valor: " + num1);
        } else if (num2 > num1) {
            System.out.println("Maior valor: " + num2);
        } else {
            System.out.println("Dois números iguais foram informados.");
        }
    }
}

Neste código em Java, utilizamos a classe Scanner para ler as entradas do usuário. Os números inseridos são armazenados nas variáveis num1 e num2. Em seguida, a lógica é a mesma dos exemplos anteriores: os números são comparados para determinar o maior valor e uma mensagem apropriada é exibida com base nessa comparação.

 

Exemplo em Rust

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

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

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

fn main() {
    // Solicita ao usuário para digitar dois números inteiros
    println!("Digite o primeiro número inteiro:");
    let mut num1 = String::new();
    io::stdin().read_line(&mut num1).expect("Falha ao ler entrada.");
    let num1: i32 = num1.trim().parse().expect("Por favor, insira um número inteiro.");

    println!("Digite o segundo número inteiro:");
    let mut num2 = String::new();
    io::stdin().read_line(&mut num2).expect("Falha ao ler entrada.");
    let num2: i32 = num2.trim().parse().expect("Por favor, insira um número inteiro.");

    // Verifica qual é o maior número e imprime na tela
    if num1 > num2 {
        println!("Maior valor: {}", num1);
    } else if num2 > num1 {
        println!("Maior valor: {}", num2);
    } else {
        println!("Dois números iguais foram informados.");
    }
}

Neste código em Rust, usamos a biblioteca padrão std::io para realizar a entrada/saída. As entradas do usuário são lidas como strings e depois convertidas em inteiros. A lógica de comparação é a mesma dos exemplos anteriores, onde os números são comparados para determinar o maior valor e uma mensagem apropriada é exibida com base nessa comparação.

 

Conclusão

Beleza pessoal, espero que tenham gostado. Com este exercício podemos treinar vários pontos e, além disso, ao escrever o mesmo programa em várias linguagens, podemos comparar e contrastar as diferentes sintaxes e convenções de cada linguagem, o que pode nos ajudar a entender melhor suas características e escolher a linguagem mais adequada para uma determinada tarefa.

 

Dúvidas ou sugestões? Deixe o seu comentário!

 

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

Deixe um comentário

Seu e-mail não será publicado.