Fala galera da programação, tudo beleza? Lá vamos nós a mais um interessante exercício.
A altura da pessoa é um valor real.
O sexo da pessoa deverá ser identificado através de um caracter.
O programa deverá aceitar os caracteres “m” ou “M” para identificar pessoas do sexo masculino e os caracteres “f” ou “F” para identificar pessoas do sexo feminino.
A variável que identifica o sexo deve ser declarada com o tipo char.
Valores informados pelo usuário: Altura: 1.6 e Sexo: F
Mensagens mostradas na tela: Peso ideal: 54,7kg
Valores informados pelo usuário: Altura: 1.8 e Sexo: M
Mensagens mostradas na tela: Peso ideal: 72,9 kg
Neste exercício, podemos aprender várias coisas:
if-else
ou switch-case
), para tomar decisões com base nas entradas do usuário. Isso nos permite lidar com diferentes cenários e responder de acordo com as condições especificadas.Em resumo, este exercício nos permite praticar habilidades fundamentais de programação, como entrada/saída, controle de fluxo, cálculos matemáticos simples e formatação de saída, enquanto nos familiarizamos com várias linguagens de programação. Isso nos ajuda a expandir nosso conhecimento e habilidades como programadores.
Vamos aos códigos!
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ #include <iostream> using namespace std; int main() { // Declaração das variáveis double altura, peso_ideal; char sexo; // Solicita a entrada do usuário cout << "Altura (metros): "; cin >> altura; cout << "Sexo (M/F): "; cin >> sexo; // Verifica o sexo e calcula o peso ideal if (sexo == 'm' || sexo == 'M') { peso_ideal = (72.7 * altura) - 58; } else if (sexo == 'f' || sexo == 'F') { peso_ideal = (62.1 * altura) - 44.7; } else { cout << "Sexo inválido. Por favor, insira 'M' para masculino ou 'F' para feminino." << endl; return 1; // Encerra o programa com código de erro } // Exibe o peso ideal cout << "Peso ideal: " << peso_ideal << " kg" << endl; return 0; }
Este programa solicita ao usuário a altura em metros e o sexo da pessoa. Em seguida, ele calcula e exibe o peso ideal conforme as fórmulas fornecidas, considerando o sexo informado. O programa verifica se o sexo inserido é válido e, caso contrário, exibe uma mensagem de erro e encerra com um código de erro.
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ #include <stdio.h> int main() { // Declaração das variáveis double altura, peso_ideal; char sexo; // Solicita a entrada do usuário printf("Altura (metros): "); scanf("%lf", &altura); printf("Sexo (M/F): "); scanf(" %c", &sexo); // Verifica o sexo e calcula o peso ideal if (sexo == 'm' || sexo == 'M') { peso_ideal = (72.7 * altura) - 58; } else if (sexo == 'f' || sexo == 'F') { peso_ideal = (62.1 * altura) - 44.7; } else { printf("Sexo inválido. Por favor, insira 'M' para masculino ou 'F' para feminino.\n"); return 1; // Encerra o programa com código de erro } // Exibe o peso ideal printf("Peso ideal: %.1lf kg\n", peso_ideal); return 0; }
Neste código, as funções de entrada e saída padrão da linguagem C (printf
e scanf
) são usadas para interagir com o usuário. A lógica do programa permanece a mesma que a versão em C++, apenas a sintaxe e as funções de entrada/saída são diferentes.
{ Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br } program CalculoPesoIdeal; var altura, peso_ideal: real; sexo: char; begin // Solicita a entrada do usuário write('Altura (metros): '); readln(altura); write('Sexo (M/F): '); readln(sexo); // Verifica o sexo e calcula o peso ideal if (sexo = 'm') or (sexo = 'M') then peso_ideal := (72.7 * altura) - 58 else if (sexo = 'f') or (sexo = 'F') then peso_ideal := (62.1 * altura) - 44.7 else begin writeln('Sexo inválido. Por favor, insira ''M'' para masculino ou ''F'' para feminino.'); halt(1); // Encerra o programa com código de erro end; // Exibe o peso ideal writeln('Peso ideal: ', peso_ideal:0:1, ' kg'); end.
Este código em Pascal realiza a mesma função que as versões anteriores. Ele solicita a altura e o sexo do usuário, calcula o peso ideal com base nas fórmulas fornecidas e exibe o resultado. A estrutura geral do programa é semelhante à dos exemplos anteriores, mas adaptada à sintaxe e às construções da linguagem Pascal.
A estratégia utilizada para escrever o programa em Pascal foi:
altura
, peso_ideal
e sexo
.write
para exibir mensagens no console e readln
para ler as entradas do usuário.if-else if-else
) para verificar se o sexo fornecido é válido (‘M’ ou ‘F’). Se o sexo não for válido, uma mensagem de erro é exibida e o programa é encerrado.writeln
.
''' Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br ''' # Solicita a entrada do usuário altura = float(input("Altura (metros): ")) sexo = input("Sexo (M/F): ").lower() # Converte para minúsculo para facilitar a comparação # Verifica o sexo e calcula o peso ideal if sexo == 'm': peso_ideal = (72.7 * altura) - 58 elif sexo == 'f': peso_ideal = (62.1 * altura) - 44.7 else: print("Sexo inválido. Por favor, insira 'M' para masculino ou 'F' para feminino.") exit(1) # Encerra o programa com código de erro # Exibe o peso ideal print(f"Peso ideal: {peso_ideal:.1f} kg")
Este código em Python realiza as mesmas operações que os exemplos anteriores. Ele solicita a altura e o sexo do usuário, calcula o peso ideal com base nas fórmulas fornecidas e exibe o resultado. A estrutura geral do programa é semelhante à dos exemplos anteriores, mas adaptada à sintaxe e às construções da linguagem Python.
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ using System; class Program { static void Main(string[] args) { // Solicita a entrada do usuário Console.Write("Altura (metros): "); double altura = Convert.ToDouble(Console.ReadLine()); Console.Write("Sexo (M/F): "); char sexo = Char.ToLower(Convert.ToChar(Console.ReadLine())); // Verifica o sexo e calcula o peso ideal double peso_ideal; if (sexo == 'm') { peso_ideal = (72.7 * altura) - 58; } else if (sexo == 'f') { peso_ideal = (62.1 * altura) - 44.7; } else { Console.WriteLine("Sexo inválido. Por favor, insira 'M' para masculino ou 'F' para feminino."); return; // Encerra o programa } // Exibe o peso ideal Console.WriteLine("Peso ideal: {0:f1} kg", peso_ideal); } }
Este código em C# realiza as mesmas operações que os exemplos anteriores. Ele solicita a altura e o sexo do usuário, calcula o peso ideal com base nas fórmulas fornecidas e exibe o resultado. A estrutura geral do programa é semelhante à dos exemplos anteriores, mas adaptada à sintaxe e às construções da linguagem C#.
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ import java.util.Scanner; public class Main { public static void main(String[] args) { // Cria um objeto Scanner para obter entrada do usuário Scanner scanner = new Scanner(System.in); // Solicita a entrada do usuário System.out.print("Altura (metros): "); double altura = scanner.nextDouble(); System.out.print("Sexo (M/F): "); char sexo = scanner.next().charAt(0); sexo = Character.toLowerCase(sexo); // Converte para minúsculo para facilitar a comparação // Verifica o sexo e calcula o peso ideal double pesoIdeal; if (sexo == 'm') { pesoIdeal = (72.7 * altura) - 58; } else if (sexo == 'f') { pesoIdeal = (62.1 * altura) - 44.7; } else { System.out.println("Sexo inválido. Por favor, insira 'M' para masculino ou 'F' para feminino."); scanner.close(); return; // Encerra o programa } // Exibe o peso ideal System.out.printf("Peso ideal: %.1f kg%n", pesoIdeal); // Fecha o Scanner para evitar vazamento de recursos scanner.close(); } }
Este programa em Java realiza as mesmas operações que os exemplos anteriores. Ele solicita a altura e o sexo do usuário, calcula o peso ideal com base nas fórmulas fornecidas e exibe o resultado. A estrutura geral do programa é semelhante à dos exemplos anteriores, mas adaptada à sintaxe e às construções da linguagem Java.
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ use std::io; fn main() { // Solicita a entrada do usuário println!("Altura (metros): "); let mut altura = String::new(); io::stdin().read_line(&mut altura).expect("Falha ao ler a entrada"); let altura: f64 = altura.trim().parse().expect("Valor inválido"); println!("Sexo (M/F): "); let mut sexo = String::new(); io::stdin().read_line(&mut sexo).expect("Falha ao ler a entrada"); let sexo: char = sexo.trim().chars().next().expect("Valor inválido"); // Verifica o sexo e calcula o peso ideal let peso_ideal: f64; match sexo { 'm' | 'M' => { peso_ideal = (72.7 * altura) - 58.0; } 'f' | 'F' => { peso_ideal = (62.1 * altura) - 44.7; } _ => { println!("Sexo inválido. Por favor, insira 'M' para masculino ou 'F' para feminino."); return; // Encerra o programa } } // Exibe o peso ideal println!("Peso ideal: {:.1} kg", peso_ideal); }
Este programa em Rust realiza as mesmas operações que os exemplos anteriores. Ele solicita a altura e o sexo do usuário, calcula o peso ideal com base nas fórmulas fornecidas e exibe o resultado. A estrutura geral do programa é semelhante à dos exemplos anteriores, mas adaptada à sintaxe e às construções da linguagem Rust.
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ package main import ( "fmt" ) func main() { // Solicita a entrada do usuário var altura float64 var sexo string fmt.Print("Altura (metros): ") fmt.Scanln(&altura) fmt.Print("Sexo (M/F): ") fmt.Scanln(&sexo) // Verifica o sexo e calcula o peso ideal var pesoIdeal float64 switch sexo { case "M", "m": pesoIdeal = (72.7 * altura) - 58.0 case "F", "f": pesoIdeal = (62.1 * altura) - 44.7 default: fmt.Println("Sexo inválido. Por favor, insira 'M' para masculino ou 'F' para feminino.") return // Encerra o programa } // Exibe o peso ideal fmt.Printf("Peso ideal: %.1f kg\n", pesoIdeal) }
Este programa em Go realiza as mesmas operações que os exemplos anteriores. Ele solicita a altura e o sexo do usuário, calcula o peso ideal com base nas fórmulas fornecidas e exibe o resultado. A estrutura geral do programa é semelhante à dos exemplos anteriores, mas adaptada à sintaxe e às construções da linguagem Go.
Este exercício foi uma oportunidade valiosa para praticar e comparar a implementação de um programa simples em várias linguagens de programação, incluindo C++, C, Pascal, Python, Java, Rust e Go. Durante o exercício, pudemos observar as diferentes sintaxes, estruturas de controle e abordagens para manipulação de entrada/saída em cada linguagem.
Ao escrever o programa em diferentes linguagens, pudemos destacar as semelhanças e diferenças entre elas, bem como entender como conceitos fundamentais de programação são expressos em diferentes ambientes de desenvolvimento.
Além disso, este exercício nos permitiu praticar habilidades como manipulação de entrada/saída, uso de estruturas de controle, realização de cálculos simples e formatação de saída. Também lidamos com casos de entrada inválida, aprendendo a gerenciar erros e exceções de forma adequada em cada linguagem.
Em conclusão, este exercício foi uma excelente maneira de ampliar nosso conhecimento e habilidades em programação, enquanto nos familiarizamos com uma variedade de linguagens de programação. Isso nos prepara para enfrentar uma variedade de problemas e projetos futuros, independentemente da linguagem de programação utilizada.
Beleza pessoal? Espero que tenham gostado.
Dúvidas ou sugestões de outras linguagens? Deixe o seu comentário!
Um abraço e até o próximo post. Valeu!
#DesenvolvimentoDeSoftware
#Programação
#LinguagensDeProgramação
#AprendizadoDeMáquina
#Algoritmos
#GiovaniDaCruz
Está gostando do conteúdo?
Considere pagar um cafezinho para nossa equipe!