Escreva um programa em C para o auoatendimento de uma loja de roupas. A função main exibe o menu abaixo que permite ao usuário escolher qual peça de roupa ele gostaria de adicionar ao carrinho. Qual produto você gostaria de comprar?
[B] - Blusa
[C] - Calça
[S] - Saia
[F] - Finalizar compra
Após exibir o valor total, o programa deve pedir o valor pago pelo usuário, e informar se a compra foi finalizada se falta dinheiro (informando quanto falta) ou se existe troco a ser recebido (informando o valor).
[B] - Blusa
[C] - Calça
[S] - Saia
[F] - Finalizar compra
Após exibir o valor total, o programa deve pedir o valor pago pelo usuário, e informar se a compra foi finalizada se falta dinheiro (informando quanto falta) ou se existe troco a ser recebido (informando o valor).
Passo 1
Beleza, vamos resumir o que a questão está pedindo. A gente precisa criar um programa em C que funcione como um autoatendimento para uma loja de roupas. O programa vai mostrar um menu com opções para o usuário escolher qual peça de roupa deseja adicionar ao carrinho: Blusa, Calça, Saia ou Finalizar a compra. Depois que o usuário finalizar, o programa vai calcular o total da compra, pedir o valor que ele vai pagar e informar se a compra foi concluída, se falta dinheiro ou se tem troco para devolver. Para resolver isso, vamos precisar usar conceitos de entrada e saída em C, estruturas de repetição, condicionais e manipulação de variáveis.
Passo 2
Primeiro, vamos pensar em como estruturar o programa. Precisamos de um menu que fique aparecendo até o usuário escolher finalizar a compra. Para isso, vamos usar um loop
while
que continua rodando enquanto a opção não for de finalizar.Passo 3
Vamos declarar variáveis para armazenar o total da compra e as quantidades de cada produto. Por exemplo, podemos ter uma variável
total
que acumula o preço das peças adicionadas.Passo 4
Dentro do loop, vamos exibir o menu de opções usando
printf
e receber a escolha do usuário com scanf
. Dependendo da escolha, vamos adicionar o preço da peça correspondente ao total. Por exemplo, se o usuário escolher ‘B’ para Blusa, vamos adicionar o preço da blusa ao total.Passo 5
Após o usuário escolher finalizar a compra, vamos exibir o total e pedir o valor que ele vai pagar. Vamos comparar o valor pago com o total. Se o valor pago for menor que o total, informamos quanto falta. Se for maior, calculamos o troco e informamos.
Passo 6
Para garantir que o programa funcione corretamente, vamos usar condicionais
if
e else
para tratar as diferentes situações de pagamento: falta dinheiro, troco ou exatamente o valor da compra.Passo 7
Por fim, vamos fechar o programa com uma mensagem de agradecimento ou confirmação da compra finalizada.
Resposta
Aqui está o código completo em C que realiza o que foi solicitado:
#include <stdio.h>
#include <ctype.h>
int main() {
char escolha;
double total = 0.0, pago, troco;
int continuar = 1;
while (continuar) {
printf("Qual produto você gostaria de comprar?\n");
printf("[B] - Blusa\n");
printf("[C] - Calça\n");
printf("[S] - Saia\n");
printf("[F] - Finalizar compra\n");
printf("Escolha uma opção: ");
scanf(" %c", &escolha);
escolha = toupper(escolha);
switch (escolha) {
case 'B':
total += 50.0; // Preço da Blusa
printf("Blusa adicionada ao carrinho. Total: R$%.2f\n", total);
break;
case 'C':
total += 80.0; // Preço da Calça
printf("Calça adicionada ao carrinho. Total: R$%.2f\n", total);
break;
case 'S':
total += 60.0; // Preço da Saia
printf("Saia adicionada ao carrinho. Total: R$%.2f\n", total);
break;
case 'F':
continuar = 0;
break;
default:
printf("Opção inválida. Tente novamente.\n");
}
}
printf("Valor total da compra: R$%.2f\n", total);
printf("Digite o valor pago: R$");
scanf("%lf", &pago);
if (pago < total) {
printf("Faltam R$%.2f para finalizar a compra.\n", total - pago);
} else if (pago > total) {
troco = pago - total;
printf("Compra finalizada. Seu troco é de R$%.2f.\n", troco);
} else {
printf("Compra finalizada exatamente com o valor pago.\n");
}
return 0;
}