Olá estou fazendo um exercício em Dev-C++ que possui o seguinte contexto:
Execício- Uma pousada cobra R$ 150,00 por diária e mais uma taxa adicional de serviços. Se a diária for menor que 5 a taxa é de R$ 20,00. Se o número de diárias for igual a 5 a taxa é de R$ 14,00 e se o número for maior que 5 a taxa é de R$ 12,00. Se o cliente da pagar em dinheiro, a pousada oferece um desconto de 5% nas taxas de serviço e 10% no valor da diária. Faça um programa em C que leia o nome do hóspede, número de diárias, a forma de pagamento e imprima o valor (sem o desconto) e o valor final a pagar (caso haja o desconto).
O anexo é o programa q eu fiz, porém não "funciona", para o exercício. Espero
q alguém me ajuda
Soluções para a tarefa
Resposta:
scanf("%s", &nome)
Explicação:
scanf("%c", &nome) que voce usou recebe apenas 1 caracter, e por isso nao esta funcionando. substitua por s para pegar o nome da pessoa e funcionará
#include <stdio.h>
int main(){
char nome;
int dias=0;
int diaria=0;
int valorcomadicional=0;
int valorcomtaxa=0;
int FormaDePag=0;
int taxa=0;
int totalsemdes=0;
int totalcomdes=0;
float TAxa = 0.05;
float Taxa = 0.1;
//printf("Digite o nome do cliente:%c"); // Escrever nome do cliente
//scanf("%s", &nome); //Lê nome do cliente
//printf("\nQuantos dias passaram na pousada:"); //Escrever dias nas pousadas
//scanf("%d", &dias); //Lê dias
dias=6;
diaria = dias*150; //Diario
printf ("\ndiaria %i", diaria);
printf("Qual sera a forma de pagamento\n");
printf("Digite 1 para cartao e 2 para dinheiro\n:"); //Escrever a forma de pagamento
scanf("%d", &FormaDePag); //Lê a forma de pagamento
if (dias < 5){
printf("A taxa adicional sera de 20R$\n"); //Se o adicional for de 20
valorcomadicional = diaria+(dias*20);
taxa = 20;
}else if(dias == 5){
printf("A taxa adicional sera de 14R$\n"); //Se o adicional for de 14
valorcomadicional = diaria+(dias*14);
taxa = 14;
}else if(dias > 5){
printf("A taxa adicional sera de 12R$\n"); //Se o adicional for de 12
valorcomadicional = diaria+(dias*12);
taxa = 12;
}
if(FormaDePag == 2 ){ //Dinheiro
printf("Havera um desconto de 10 porcento na diaria e 5 na taxa\n");
valorcomtaxa = (diaria/Taxa)+(taxa/TAxa); //Os descontos
}else if(FormaDePag == 1 ){ //Cartão
printf("Nao havera desconto\n");
}
printf("\nvalorcomadicional %i", valorcomadicional);
printf("\nvalorcomtaxa %i", valorcomtaxa);
totalsemdes = valorcomadicional;
totalcomdes = valorcomtaxa;
printf("O valor, sem o desconto, e:%d\n", totalsemdes);
printf("O valor, com o descont, e:%f,", totalcomdes);
return 0;
}