Exercício: maior de dois números inteiros

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:
- 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.
- 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. - Tipos de dados: Lidamos com diferentes tipos de dados, como inteiros, e aprendemos como converter entre eles quando necessário.
- 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.
- Exibição de saída: Aprendemos a exibir mensagens na tela para fornecer feedback ao usuário sobre os resultados do programa.
- 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:
- Solicitar ao usuário que insira dois números inteiros.
- Armazenar esses números em variáveis.
- Comparar os números para determinar qual é o maior.
- Se um número for maior que o outro, imprimir o maior número na tela.
- 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!