Exercício: desconto de 50% na segunda unidade

Fala galera da programação, tudo beleza?
Novo exercício que envolve promoções. Na promoção de hoje o desconto é de 50% na compra da segunda unidade.
Exemplos de saída:
1 unidade = 8 reais;
2 unidades = 12 reais; (Veja que a segunda tem 50% de desconto)
3 unidades = 20 reais;
4 unidades = 24 reais; (Veja que a quarta também tem 50% de desconto
e assim por diante.
Bem, vamos aos códigos:
Exemplo em C
/******************************************************************************
Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br
*******************************************************************************/
#include <stdio.h>
int main() {
// Variáveis
int quantidade;
float valorUnitario = 8.00;
float valorTotal;
// Entrada de dados
printf("Digite a quantidade de unidades compradas: ");
scanf("%d", &quantidade);
// Cálculo do valor total
valorTotal = (quantidade / 2) * 12.0 + (quantidade % 2) * valorUnitario;
// Saída de dados
printf("Valor total a ser pago: R$ %.2f\n", valorTotal);
return 0;
}
Neste código, o valor total é calculado considerando que a cada par de unidades, o cliente paga R$12. Se houver uma unidade adicional, ela é paga integralmente por R$8.
quantidade / 2: Esta parte calcula quantos pares de unidades completos estão presentes na quantidade total. Cada par é composto por duas unidades, e para cada par, o cliente paga R$12 (R$8 pela primeira unidade e R$4 pela segunda devido ao desconto de 50%).quantidade % 2: Esta parte calcula se há uma unidade adicional fora dos pares. Se houver, significa que a última unidade não faz parte de um par completo e deve ser paga integralmente por R$8.((quantidade / 2) * 12.0) + ((quantidade % 2) * valorUnitario): Somando os resultados das duas partes, obtemos o valor total a ser pago. A primeira parte representa o custo dos pares completos, e a segunda parte representa o custo da unidade adicional, se houver.
Exemplo em C++
/******************************************************************************
Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br
*******************************************************************************/
#include <iostream>
#include <iomanip>
int main() {
// Variáveis
int quantidade;
float valorUnitario = 8.00;
float valorTotal;
// Entrada de dados
std::cout << "Digite a quantidade de unidades compradas: ";
std::cin >> quantidade;
// Cálculo do valor total
valorTotal = (quantidade / 2) * 12.0 + (quantidade % 2) * valorUnitario;
// Saída de dados
std::cout << "Valor total a ser pago: R$ " << std::fixed << std::setprecision(2) << valorTotal << std::endl;
return 0;
}
Neste código em C++, usei std::cout para a saída de dados e std::cin para a entrada de dados. Além disso, adicionei #include <iostream> e #include <iomanip> para incluir as bibliotecas necessárias para entrada/saída em C++.
Exemplo em Pascal
{
Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br
}
program CalculoValorTotal;
var
quantidade: Integer;
valorUnitario, valorTotal: Real;
begin
// Entrada de dados
Write('Digite a quantidade de unidades compradas: ');
ReadLn(quantidade);
// Cálculo do valor total
valorUnitario := 8.00;
valorTotal := (quantidade div 2) * 12.0 + (quantidade mod 2) * valorUnitario;
// Saída de dados
WriteLn('Valor total a ser pago: R$ ', valorTotal:0:2);
end.
Este é um programa simples em Pascal. Assim como nos exemplos em C e C++, ele lê a quantidade de unidades compradas, calcula o valor total com base nas regras fornecidas e exibe o resultado.
Exemplo em Python
'''
Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br
'''
# Entrada de dados
quantidade = int(input("Digite a quantidade de unidades compradas: "))
# Cálculo do valor total
valor_unitario = 8.00
valor_total = (quantidade // 2) * 12.0 + (quantidade % 2) * valor_unitario
# Saída de dados
print(f"Valor total a ser pago: R$ {valor_total:.2f}")
Em Python, a divisão inteira é realizada com //. O código também usa a função input para obter a entrada do usuário e print para exibir o resultado.
Exemplo em C#
/******************************************************************************
Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br
*******************************************************************************/
using System;
class Program
{
static void Main()
{
// Entrada de dados
Console.Write("Digite a quantidade de unidades compradas: ");
int quantidade = int.Parse(Console.ReadLine());
// Cálculo do valor total
float valorUnitario = 8.00f;
float valorTotal = (quantidade / 2) * 12.0f + (quantidade % 2) * valorUnitario;
// Saída de dados
Console.WriteLine($"Valor total a ser pago: R$ {valorTotal:F2}");
}
}
Este programa em C# realiza operações semelhantes aos demais exemplos. Usa Console.ReadLine() para obter a entrada do usuário, converte a entrada para um número inteiro usando int.Parse, realiza os cálculos e exibe o resultado usando Console.WriteLine.
Exemplo em Java
/******************************************************************************
Criado pelo Professor Giovani Da Cruz
https://giovanidacruz.com.br
*******************************************************************************/
import java.util.Scanner;
public class CalculoValorTotal {
public static void main(String[] args) {
// Entrada de dados
Scanner scanner = new Scanner(System.in);
System.out.print("Digite a quantidade de unidades compradas: ");
int quantidade = scanner.nextInt();
// Cálculo do valor total
float valorUnitario = 8.00f;
float valorTotal = (quantidade / 2) * 12.0f + (quantidade % 2) * valorUnitario;
// Saída de dados
System.out.printf("Valor total a ser pago: R$ %.2f%n", valorTotal);
}
}
Neste código em Java, usamos a classe Scanner para obter a entrada do usuário, realizamos os cálculos e exibimos o resultado usando System.out.printf.
Beleza pessoal? Espero que tenham gostado.
Dúvidas ou sugestão de outras linguagens? Deixe o seu comentário!
Um abraço e até o próximo post.Valeu!
#giovanidacruz