// Fun�o para aplicar um cupom com 50% de desconto
void aplicarDesconto(FILE *arquivoLocacoes)
{
int codigoLocacao;
printf("Digite o codigo da locacao para aplicar o cupom: ");
scanf("%d", &codigoLocacao);
struct Locacao locacao;
fseek(arquivoLocacoes, (codigoLocacao - 1) * sizeof(struct Locacao), SEEK_SET);
fread(&locacao, sizeof(struct Locacao), 1, arquivoLocacoes);
if (locacao.codigo == 0)
{
printf("Locacao nao encontrada.\n");
return;
}
// Aplicar desconto de 50%
locacao.valorTotal *= 0.5;
// Atualizar o valor no arquivo
fseek(arquivoLocacoes, (codigoLocacao - 1) * sizeof(struct Locacao), SEEK_SET);
fwrite(&locacao, sizeof(struct Locacao), 1, arquivoLocacoes);
printf("Cupom de 50%% de desconto aplicado com sucesso na locacao %d!\n", locacao.codigo);
}
EXPLICAÇÃO DO CÓDIGO:
Entrada de Dados:
Solicita ao usuário que digite o código da locação para a qual deseja aplicar o cupom.
Leitura da Locação:
Posiciona o ponteiro no arquivo de locações no registro correspondente ao código fornecido.
Lê os dados da locação do arquivo.
Verificação de Existência da Locação:
Verifica se a locação foi encontrada no arquivo. Se não, exibe uma mensagem informando que a locação não foi encontrada e encerra a função.
Aplicação do Desconto:
Multiplica o valor total da locação por 0.5 para aplicar o desconto de 50%.
Atualização do Valor no Arquivo:
Posiciona o ponteiro no início do registro da locação no arquivo.
Escreve os dados atualizados da locação de volta no arquivo.
Mensagem de Sucesso:
Exibe uma mensagem indicando que o cupom de 50% de desconto foi aplicado com sucesso na locação especificada.
// Fun�o para aplicar um cupom com 50% de desconto void aplicarDesconto(FILE *arquivoLocacoes) { int codigoLocacao; printf("Digite o codigo da locacao para aplicar o cupom: "); scanf("%d", &codigoLocacao);
EXPLICAÇÃO DO CÓDIGO: Entrada de Dados:
Solicita ao usuário que digite o código da locação para a qual deseja aplicar o cupom. Leitura da Locação:
Posiciona o ponteiro no arquivo de locações no registro correspondente ao código fornecido. Lê os dados da locação do arquivo. Verificação de Existência da Locação:
Verifica se a locação foi encontrada no arquivo. Se não, exibe uma mensagem informando que a locação não foi encontrada e encerra a função. Aplicação do Desconto:
Multiplica o valor total da locação por 0.5 para aplicar o desconto de 50%. Atualização do Valor no Arquivo:
Posiciona o ponteiro no início do registro da locação no arquivo. Escreve os dados atualizados da locação de volta no arquivo. Mensagem de Sucesso:
Exibe uma mensagem indicando que o cupom de 50% de desconto foi aplicado com sucesso na locação especificada.