Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá
Sou novo aqui no fórum e iniciante em programação.
Alguém pode me ajudar com esse exercício ?
Espero que alguém possa me ajudar.Agradeço desde já
Construa um algoritmo que armazene para 10 filmes, o código, o nome,o gênero (ação, aventura...), censura (em idade), tamanho do filme (em minutos), valor da locação, quantidade de mídias existentes e quantidade que já estão locadas.
A cada final de cadastro, pergunte ao usuário se ele deseja cadastrar novo filme se a resposta for afirmativa e o numero máximo de filmes (no caso 10) não foi ultrapassado volte a cadastrar novo filme.
Faça a locação dos filmes, no final do cadastro de cada locação, pergunte ao usuário se ele deseja cadastrar nova locação, se a resposta for afirmativa volte a cadastrar nova locação.
Verifique antes de finalizar cada locação se quem está locando pode locar o filme desejado perguntando a idade do cliente, e verifique também se ainda tem mídia do filme disponível para locação, se nenhuma dessas restrições for constatada, faça a locação para o cliente acrescente o número de filmes locados na coluna quantidade de locações.
Faça um relatório no qual constarão todos os filmes cadastrados contendo: o código do filme, o nome, o gênero, o valor de locação e quantos filmes estão disponíveis para locação. Faça também uma rotina para devolução dos filmes locados.
Utilize Case para a construção do menu com as opções:
1 - Cadastro
2 - Locação
3 - Devolução
4 - Relatório de Filmes
5 - Sobre
6 - Sair
Bom, até agora o que eu consegui fazer é isso
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <locale.h>
int main(){
setlocale(LC_ALL,"");
int menu;
struct filmes{
int cod, idade, qtd_midias=0, qtd_loc, cadastro;
char nome[50], genre[50];
float duracao, val_loc;
};
filmes loc[10];
printf("\n Menu \n");
printf("\n 1 - Cadastrar Filmes ");
printf("\n 2 - Locar Filmes ");
printf("\n 3 - Devolver Filmes ");
printf("\n 4 - Relatório ");
printf("\n 5 - Sobre ");
printf("\n 6 - Sair ");
scanf("%d",&menu);
int qtd_cad=0;
switch(menu){
case 1:
if(qtd_cad==10){
printf("\n Atingiu o limite máximo de filmes cadastrado ");
break;
}
do{
printf("\n Digite o código do filme ");
scanf("%i",&loc[qtd_cad].cod);
fflush(stdin);
printf("\n Digite o nome do filme ");
scanf("%s",&loc[qtd_cad].nome);
fflush(stdin);
printf("\n Digite o gênero do filme ");
scanf("%s",&loc[qtd_cad].genre);
fflush(stdin);
printf("\n Digite a idade permitida para acessar o filme ");
scanf("%d",&loc[qtd_cad].idade);
fflush(stdin);
printf("\n Digite a duração do filme em minutos ");
scanf("%s",&loc[qtd_cad].duracao);
fflush(stdin);
printf("\n Digite o valor da locação ");
scanf("%f",&loc[qtd_cad].val_loc);
fflush(stdin);
printf("\n Digite a quantidade de midias existentes ");
scanf("%d",&loc[qtd_cad].qtd_midias);
fflush(stdin);
printf("\n Deseja cadastrar outro filme ? Pressione s ( para sim ) ou n (para não) ");
scanf("%c",&loc[qtd_cad].cadastro);
fflush(stdin);
if((loc[qtd_cad].cadastro!='s') && (loc[qtd_cad].cadastro!='n')){
printf("\nTecla errada !! Por favor pressione a tecla novamente ");
scanf("%c",&loc[qtd_cad].cadastro);
fflush(stdin);
qtd_cad ++;
}
}
while(qtd_cad<10);
case 2:
int codigo, idad;
char locar;
do{
printf("\n Digite o código do filme ");
scanf("%d",&codigo);
printf("\n Digite sua idade ");
scanf("%d",&idad);
if (codigo==loc[qtd_cad].cod){
if(idad==loc[qtd_cad].idade){
}else{
printf("\n Idade não permitida !! ");
}
printf("\n O nome do filme é : %d",loc[0].cod);
printf("\n O gênero é : %s",loc[0].genre);
printf("\n O valor do filme é : %0.2f",loc[0].val_loc);
printf("\n Deseja locar outro filme ? Pressione S (para sim) ou N(para não)");
scanf("%c",&locar);
}
locar++;
}
while('S'==locar);
}
}
No case 2 :
Vou precisar fazer 10 vezes ? fazendo um por um
printf("\n O nome do filme é : %d",loc[0].cod);
printf("\n O gênero é : %s",loc[0].genre);
printf("\n O valor do filme é : %0.2f",loc[0].val_loc);
printf("\n Deseja locar outro filme ? Pressione S (para sim) ou N(para não)");
scanf("%c",&locar);
Ex : loc[1].cod , loc[2].cod .....
Carregando comentários...