Fala galera da programação, tudo beleza? Vamos a um novo exercício para aprimorarmos nossas habilidades. Aqui existem dados importantes para podermos realizar a tarefa.
Tabela de códigos:
Exemplos de saída
Exemplo 1
Valores informados pelo usuário: Código: 3 a = 15 b=30 c=90
Mensagens mostradas na tela: Resultado da subtração: 75
Exemplo 2
Valores informados pelo usuário: Código: 4 a = 2 b=3 c=5
Mensagens mostradas na tela: Soma dos cubos: 160
Neste exercício, podemos aprender várias coisas:
switch-case
(ou match
em Rust) para determinar qual operação executar com base no código fornecido pelo usuário.if-else
, switch-case
, match
) é essencial para determinar o comportamento do programa com base nas entradas do usuário.
Vamos aos códigos!
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ #include <iostream> #include <cmath> using namespace std; int main() { int codigo; double a, b, c; cout << "Digite o codigo (1 a 4): "; cin >> codigo; cout << "Digite os tres valores (a, b e c): "; cin >> a >> b >> c; switch (codigo) { case 1: cout << "Resultado da multiplicacao: " << (a * b * c) << endl; break; case 2: cout << "Resultado da soma: " << (a + b + c) << endl; break; case 3: cout << "Resultado da subtracao: " << (a - b - c) << endl; break; case 4: cout << "Resultado da soma dos cubos: " << (pow(a, 3) + pow(b, 3) + pow(c, 3)) << endl; break; default: cout << "Codigo invalido! Por favor, digite um codigo entre 1 e 4." << endl; return 1; } return 0; }
Neste programa, o usuário insere um código e três valores, e o programa executa a operação correspondente de acordo com o código fornecido. O programa também inclui uma verificação para garantir que o código fornecido esteja na faixa válida de 1 a 4.
A estratégia utilizada foi:
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ #include <stdio.h> #include <math.h> int main() { int codigo; double a, b, c; printf("Digite o codigo (1 a 4): "); scanf("%d", &codigo); printf("Digite os tres valores (a, b e c): "); scanf("%lf %lf %lf", &a, &b, &c); switch (codigo) { case 1: printf("Resultado da multiplicacao: %.2lf\n", a * b * c); break; case 2: printf("Resultado da soma: %.2lf\n", a + b + c); break; case 3: printf("Resultado da subtracao: %.2lf\n", a - b - c); break; case 4: printf("Resultado da soma dos cubos: %.2lf\n", pow(a, 3) + pow(b, 3) + pow(c, 3)); break; default: printf("Codigo invalido! Por favor, digite um codigo entre 1 e 4.\n"); return 1; } return 0; }
Neste código em C, a estrutura é semelhante à versão em C++. A diferença principal está na utilização de printf
e scanf
para entrada e saída de dados em vez de cout
e cin
, e a inclusão de #include <stdio.h>
para a utilização dessas funções. Fora isso, a lógica e a estrutura do programa são praticamente idênticas à versão em C++.
{ Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br } program Calculadora; uses Math; var codigo: integer; a, b, c: real; begin write('Digite o codigo (1 a 4): '); readln(codigo); write('Digite os tres valores (a, b e c): '); readln(a, b, c); case codigo of 1: writeln('Resultado da multiplicacao: ', a * b * c :0:2); 2: writeln('Resultado da soma: ', a + b + c :0:2); 3: writeln('Resultado da subtracao: ', a - b - c :0:2); 4: writeln('Resultado da soma dos cubos: ', power(a, 3) + power(b, 3) + power(c, 3) :0:2); else writeln('Codigo invalido! Por favor, digite um codigo entre 1 e 4.'); exit; end; end.
Neste programa em Pascal, a estrutura é bastante semelhante às versões em C e C++. A entrada e saída de dados são tratadas com readln
e writeln
. O case of
é usado para determinar a operação com base no código fornecido pelo usuário, e power
é usado para calcular o cubo dos valores. A instrução exit
é usada para encerrar o programa imediatamente caso o código fornecido seja inválido.
''' Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br ''' def main(): codigo = int(input("Digite o codigo (1 a 4): ")) a, b, c = map(float, input("Digite os tres valores (a, b e c): ").split()) if codigo == 1: print("Resultado da multiplicacao:", a * b * c) elif codigo == 2: print("Resultado da soma:", a + b + c) elif codigo == 3: print("Resultado da subtracao:", a - b - c) elif codigo == 4: print("Resultado da soma dos cubos:", a ** 3 + b ** 3 + c ** 3) else: print("Codigo invalido! Por favor, digite um codigo entre 1 e 4.") if __name__ == "__main__": main()
Neste programa em Python, utilizamos a função input
para receber os valores do usuário. A função map
é usada para converter os valores para o tipo float
. Em seguida, usamos estruturas condicionais (if
, elif
, else
) para determinar a operação com base no código fornecido pelo usuário. Finalmente, chamamos a função main
para iniciar o programa. Aqui quando for digitar os 3 valores, digite-os separando com espaços em branco. Exemplo: (5 22 33)
Criamos outro exemplo que é válido para Python a partir da versão 3.10
def main(): codigo = int(input("Digite o código (1 a 4): ")) a, b, c = map(float, input("Digite os três valores (a, b e c): ").split()) resultado = match codigo: case 1: a * b * c case 2: a + b + c case 3: a - b - c case 4: a ** 3 + b ** 3 + c ** 3 case _: "Código inválido! Por favor, digite um código entre 1 e 4." print(resultado) if __name__ == "__main__": main()
A partir da versão 3.10 do Python, foi introduzida a sintaxe match
, que permite fazer seleções condicionais mais complexas e semelhantes ao switch-case
encontrado em outras linguagens. Observe que o match
é uma funcionalidade relativamente nova em Python e pode não estar disponível em versões mais antigas da linguagem. Neste exemplo, a expressão match
é utilizada para determinar o resultado com base no código fornecido pelo usuário. Cada case
corresponde a uma operação específica, e o resultado é atribuído à variável resultado
. Se o código fornecido não corresponder a nenhum case
, a mensagem de erro é atribuída à variável resultado
. Finalmente, o resultado é impresso na tela.
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ using System; class Program { static void Main() { Console.Write("Digite o código (1 a 4): "); int codigo = int.Parse(Console.ReadLine()); Console.Write("Digite os três valores (a, b e c): "); string[] valores = Console.ReadLine().Split(); double a = double.Parse(valores[0]); double b = double.Parse(valores[1]); double c = double.Parse(valores[2]); switch (codigo) { case 1: Console.WriteLine("Resultado da multiplicação: " + (a * b * c)); break; case 2: Console.WriteLine("Resultado da soma: " + (a + b + c)); break; case 3: Console.WriteLine("Resultado da subtração: " + (a - b - c)); break; case 4: Console.WriteLine("Resultado da soma dos cubos: " + (Math.Pow(a, 3) + Math.Pow(b, 3) + Math.Pow(c, 3))); break; default: Console.WriteLine("Código inválido! Por favor, digite um código entre 1 e 4."); break; } } }
Neste programa em C#, utilizamos a classe Console
para interagir com o usuário, solicitando a entrada do código e dos três valores. Em seguida, usamos int.Parse
e double.Parse
para converter os valores de entrada para os tipos apropriados. A operação é determinada usando um switch
com base no código fornecido pelo usuário, e o resultado é exibido na tela.
/****************************************************************************** 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); System.out.print("Digite o código (1 a 4): "); int codigo = scanner.nextInt(); System.out.print("Digite os três valores (a, b e c): "); double a = scanner.nextDouble(); double b = scanner.nextDouble(); double c = scanner.nextDouble(); switch (codigo) { case 1: System.out.println("Resultado da multiplicação: " + (a * b * c)); break; case 2: System.out.println("Resultado da soma: " + (a + b + c)); break; case 3: System.out.println("Resultado da subtração: " + (a - b - c)); break; case 4: System.out.println("Resultado da soma dos cubos: " + (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3))); break; default: System.out.println("Código inválido! Por favor, digite um código entre 1 e 4."); break; } scanner.close(); } }
Neste programa em Java, utilizamos a classe Scanner
para receber entrada do usuário. Em seguida, usamos um switch
para determinar a operação com base no código fornecido pelo usuário. O resultado é exibido na tela com a função println()
.
/****************************************************************************** Criado pelo Professor Giovani Da Cruz https://giovanidacruz.com.br *******************************************************************************/ use std::io; fn main() { println!("Digite o código (1 a 4): "); let mut codigo = String::new(); io::stdin().read_line(&mut codigo).expect("Falha ao ler linha."); let codigo: u32 = codigo.trim().parse().expect("Por favor, digite um número válido."); println!("Digite os três valores (a, b e c): "); let mut valores = String::new(); io::stdin().read_line(&mut valores).expect("Falha ao ler linha."); let mut valores_iter = valores.split_whitespace(); let a: f64 = valores_iter.next().expect("Valor de a não fornecido.").parse().expect("Por favor, digite um número válido."); let b: f64 = valores_iter.next().expect("Valor de b não fornecido.").parse().expect("Por favor, digite um número válido."); let c: f64 = valores_iter.next().expect("Valor de c não fornecido.").parse().expect("Por favor, digite um número válido."); match codigo { 1 => println!("Resultado da multiplicação: {}", a * b * c), 2 => println!("Resultado da soma: {}", a + b + c), 3 => println!("Resultado da subtração: {}", a - b - c), 4 => println!("Resultado da soma dos cubos: {}", a.powi(3) + b.powi(3) + c.powi(3)), _ => println!("Código inválido! Por favor, digite um código entre 1 e 4."), } }
Neste programa em Rust, utilizamos a macro println!
para exibir mensagens na tela. Utilizamos io::stdin().read_line()
para ler a entrada do usuário e parse()
para converter os valores para os tipos apropriados. O match
é usado para determinar a operação com base no código fornecido pelo usuário.
Em resumo, este exercício pode ajudar a reforçar conceitos fundamentais de programação e a prática na implementação de soluções simples, porém práticas, para problemas do mundo real.
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!
Fala galera da programação, tudo beleza? 📅💻 Explore a manipulação de datas e descubra como calcular o dia anterior em várias linguagens de programação! Aprenda algoritmos, lógica condicional e muito mais neste desafio divertido. Considerações Para facilitar, considerar que os anos bissextos são aqueles divisíveis por 4. Assim o mês 2 (fevereiro) possui 28 […]
Fala galera da programação, tudo beleza? Vamos a um novo exercício de algoritmos com desvio condicional. Desafie suas habilidades de programação com este exercício simples de cálculo de estacionamento em diversas linguagens! 🚗💻 Aprenda e pratique condicionais, entrada/saída e sintaxe em várias linguagens. Dicas para o exercício Lembrar que pode ser informado 0 no tempo […]
Fala galera da programação, tudo beleza? 💻 Novo exercício na área para aprimorar a nossa lógica de programação. Dica do exercício: Para simplificar o problema, converta cada par de valores em um único valor em minutos. 🕒 O que podemos aprender neste exercício? Neste exercício, podemos aprender várias coisas: Manipulação de Entrada/Saída: Aprendemos como […]
Fala galera da programação, tudo beleza? Novo algoritmo na área com o tema desvio condicional. Hoje vamos explorar uma variedade de linguagens de programação! 🚀 Comparando diferentes abordagens para resolver um problema simples: determinar se um número é zero, positivo ou negativo. Da sintaxe às estruturas condicionais, mergulhamos na essência de cada linguagem. O […]
Fala galera da programação, tudo beleza? Hoje vamos descubra como este simples exercício de programação em várias linguagens pode fortalecer suas habilidades de codificação! 🚀 Aprenda a calcular médias de notas e determinar a aprovação ou reprovação de alunos em C++, C, Pascal, Python, C#, Java, Rust e Go. O que podemos aprender neste […]
Fala galera da programação, tudo beleza? O exercício pede para verificar se o número lido possui determinada característica. Ela é conhecida como “Número Kaprekar”. Um número de Kaprekar é um inteiro positivo cuja representação em quadrados de seus dígitos pode ser dividida em duas partes que somam o número original quando somadas. O exemplo […]
Fala galera da programação, tudo beleza? Hoje um novo exercício de calculadora para aprimorar nossa lógica de programação. Dicas do exercício Em duas situações, o programa não deverá efetuar o cálculo: Se o operador informado pelo usuário for inválido mostrar a mensagem “Operador inválido” e encerrar a execução do programa. Se o segundo operando […]
Fala galera da programação, tudo beleza? Lá vamos nós a mais um interessante exercício. Dados do Exercício Formulas Para Homens: ( 72.7 * altura ) – 58 Para Mulheres: ( 62.1 * altura) – 44.7 Mais dicas A altura da pessoa é um valor real. O sexo da pessoa deverá ser identificado através […]
Fala galera da programação, tudo beleza? Quer aprimorar suas habilidades com estruturas condicionais? Explore este desafio de aprendizado de if-else. O que podemos aprender neste exercício? Neste exercício, aprendemos a: Solicitar entrada do usuário: Aprendemos a solicitar entrada do usuário para obter informações necessárias para o programa, como a idade do nadador. Isso é útil […]
Fala galera da programação, tudo beleza? Hoje vamos montar nossas calculadoras! Acredito que seja um dos exercícios mais realizados entre os iniciantes. O desafio será encapsular as operações aritméticas em funções. O que vamos aprender neste exercício? Neste exercício, vamos aprender sobre: Funções em Programação: Vamos explorar como dividir nosso código em funções. As […]