Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)

Paste

Pasted as C by igor ( 7 years ago )
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int var=0;

struct Filme { 
 	int idfilme;           
 	char nome[60];           
 	char categoria[30];           
 	int copias; 
 	int qtdlocado;   
 	int  histlocatario[100]; 
 }; 
 
 struct Cliente { 
 	int idcliente;           
 	char nome[60];           
 	char endereco[30];           
 	char telefone[10]; 
 	char email[30];           
 	int  histlocacao[100]; 
 	int filmesalugados[3]; 
 };
 

 void CadastroFilme(struct Filme filme[2]){
 	
  	struct Filme *f;
	 char s;
	 int x,id=0;
	 f = filme;
	 var = 0;
	 printf("Voce selecionou Cadastrar um Filme!!\n");
	 do{
	 (f+var)->idfilme = var;
	 
	 fflush(stdin);
	 printf("Digite o nome do Filme:");
	 gets((f+var)->nome);
	 
	 printf("Digite a Categoria do Filme:");
	 gets((f+var)->categoria);
	 
	 printf("Digite o numero de copias do Filme:");
	 scanf("%d",&(f+var)->copias);
	 
	 printf("Digite a quantidade de Filme alocados:");
	 scanf("%d",&(f+var)->qtdlocado);
	 int x;
	 
	 //(f + var)->histlocatario[var] = var;	
	 
	 
	 fflush(stdin);
	 var++;
	 printf("Deseja Cadastrar outro? [s,n]:");
	 scanf("%c",&s);
	 fgetc(stdin);
	 
			 }while(s != 'n'); 		
	 }
 	
 

 
void Locacao (struct Cliente cliente[2], struct Filme filme[2]){
	char x;int y;
	struct Cliente *c;
	struct Filme *f;
	f = &filme[0];
	c = &cliente[0];
	printf("Voce selecionou Cadastrar um Cliente!!\n");
		var = 0;
	int cont;
	do{
	fflush(stdin);	
	//(c+var)->idcliente = var;
	printf("Digite o Nome do Cliente:");
	gets((c + var)->nome);
	
	fflush(stdin);
	printf("Digite o Endereco do Cliente:");
	gets((c + var)->endereco);
	
	printf("Digite o telefone do Cliente:");
	gets((c + var)->telefone);
	
	printf("Digite o email do Cliente:");
	gets((c + var)->email);
	
	printf("Quantos filmes gostaria de alugar [MAX:2]:");
	scanf("%d",&(c + var)->filmesalugados);
	int numero=*(c + var)->filmesalugados;
	fflush(stdin);
	while(numero>0){
		char filme[100];
		int i,x;
		fflush(stdin);
		printf("Digite o Nome do Filme:");
		gets(filme);
		for(i=0; i<2; i++ ){	
		if(strcmp((f+i)->nome,filme)==0){	
		 (c + i)->histlocacao[i] = (f + i)->idfilme;
		 (f + i )->histlocatario[i]=( c + i )->idcliente;
		}	
		}
			
	numero--;	
	}

		var++;	
		
	fflush(stdin);	
	printf("Deseja Cadastrar mais um cliente? [s,n]:");
	scanf("%c",&x);	
	fgetc(stdin);
	}while(x!='n');
	
}

void BuscarCliente(struct Cliente cliente[2]){
	struct Cliente *c;
	c = cliente;
	char nome[100];
	printf("Voce Selecionou Buscar Cliente!\n");
	printf("Digite o nome do cliente:");
	fflush(stdin);
	gets(nome);
	int i;
	for(i=0; i<1; i++){
		if(strcmp(nome,(c+i)->nome)==0){
			printf(":::::::::::::::::::::\n");
			printf("Nome: %s\n",(c+ i)->nome);
			printf("Endereco: %s\n",(c+ i)->endereco);
			printf("Telefone: %s\n",(c+ i)->telefone);
			printf("Email: %s\n\n",(c+ i)->email);
			printf(":::::::::::::::::::::\n");
		}else{
			printf("O Cliente procurado nao foi encontrado!!\n");
		}
	}
		
}

void BuscarFilme(struct Filme filme[2]){
	struct Filme *f;
	f = filme;
	int x;
	char nome[100];
	printf("Voce Selecionou Buscar Filme!\n");
	fflush(stdin);
	printf("Digite o nome do Filme:");
	gets(nome);
	int i;
	for(i=0; i<1; i++){	
		if(strcmp(nome,(f+i)->nome)==0){
			printf(":::::::::::::::::::::\n");
			printf("Nome: %s\n",(f+i)->nome);
			printf("Categoria: %s\n",(f+i)->categoria);
			printf("Copias: %d\n",(f+i)->copias);
			printf("Locados: %d\n",(f+i)->qtdlocado);
			printf(":::::::::::::::::::::\n");
		}else{
			printf("O filme Procurado nao foi encontrado!!\n");
		}
	}	
}
 
 void HistoricoLCliente(struct Cliente cliente[2],struct Filme filme[2]){
 	struct Cliente  *c;
 	struct Filme *f;
 	c = cliente;
 	f = filme;
 	int cont=0;
 	printf("Voce Selecionou locacoes por cliente!\n");
 	char nome[100];
 	int i;
 	fflush(stdin);
 	printf("Digite o nome do Cliente:");
 	gets(nome);
	for(i = 0; i<2; i++){
		if(strcmp(nome,(c+i)->nome)==0){
			cont++;
			if((f + i )->histlocatario[i]==( c + i )->idcliente){
				
				printf("O cliente [%s] possui os seguintes filmes alocados\n",( c + i)->nome);
				int x;
				printf(":::::::::::::::::::::\n");
				fflush(stdin);
				for(x=0; x<2; x++){
				printf("%s\n",(f+ x)->nome);
				printf(":::::::::::::::::::::\n");	
				}
				
				
			}
		}
	}
 	
 };
 
 
 void HistoricoLFilme(struct Cliente cliente[2],struct Filme filme[2]){
 	struct Cliente *c;
 	struct Filme  *f;
 	c = cliente;
 	f = filme;
 	int cont=0;
 	printf("Voce Selecionou locacoes por filme!\n");
 	char nome[100];
 	int i;
 	fflush(stdin);
 	printf("Digite o nome do Filme:");
 	gets(nome);
	for(i = 0; i<2; i++){
		if(strcmp(nome,(f+i)->nome)==0){
			if((c + i)->histlocacao[i]==(f+ i)->idfilme){
				cont++;
			
				printf("O Filme [%s] possui os seguintes Clientes \n",( f + i)->nome);
				printf(":::::::::::::::::::::\n");
				int x;
				for(x=0; x<2; x++){
					printf("%s\n",(c + x)->nome);
				printf(":::::::::::::::::::::\n");			
				}
				
			}
		}
		
	}
 	
 };
 
 void Listagem(struct Cliente cliente[2],struct Filme filme[2]){
 	struct Cliente  *c;
 	struct Filme *f;
 	int x;
 	c = cliente;
 	f = filme;
 	int cont=0;
 	printf("Voce Selecionou listagem!\n");
 	char nome[100];
 	int i;
 	fflush(stdin);
 	

	for(i = 0; i<2; i++){
			if((f + i )->histlocatario[i]==( c + i )->idcliente){
				
				printf(":::::::::::::::::::::\n");
				printf("cliente: %s \n",( c + i)->nome);
			
				printf("Filmes Alocados\n");
				int x;
				for(x=0; x<2; x++){
				printf("%s\n",(f+ x)->nome);
					
				}
				printf(":::::::::::::::::::::\n");
				
			}
		
	}
 	
 };
 
 void ExclusaoFilme(struct Filme filme[2]){
 	struct Filme *f;
	f = filme;
	int x;
	char nome[100];
	printf("Voce Selecionou Exclusao de Filme!\n");
	fflush(stdin);
	printf("Digite o nome do Filme:");
	gets(nome);
	int i;
	for(i=0; i<1; i++){	
		if(strcmp(nome,(f+i)->nome)==0){
			(f+i)->nome[i] = ' ';
			(f+i)->idfilme = -1;
			printf(":::::::::::::::::::::\n");
			printf("Filme excluido com sucesso\n");
			printf(":::::::::::::::::::::\n");
			
		}
	}	
 }
 
 void ExclusaoCliente(struct Cliente cliente[2]){
	struct Cliente *c;
	c = cliente;
	char nome[100];
	printf("Voce Selecionou Excluir Cliente!\n");
	printf("Digite o nome do cliente:");
	fflush(stdin);
	gets(nome);
	int i;
	for(i=0; i<1; i++){
		if(strcmp(nome,(c+i)->nome)==0){
			(c+i)->nome[i] = ' ';
			(c+i)->idcliente = -1;
			printf(":::::::::::::::::::::\n");
			printf("Cliente excluido com sucesso\n");
			printf(":::::::::::::::::::::\n");
		}
	}
		
}
 
 
 
 
 
 
 
 
 
 main(){
 	
 	struct Filme filme[2];
 	struct Cliente cliente[2];
	 printf("Locadora Dahora!!\n");
	int op;
	 do{
 	printf("O que voce deseja fazer?\n\n");
 	printf("1-Cadastrar um Cliente\n");
 	printf("2- Cadastrar um Filme?\n");
 	printf("3-Bucar um Cliente?\n");
 	printf("4-Bucar um Filme?\n");
 	printf("5-Historico de locacoes por cliente?\n");
 	printf("6-Historico de locacoes por filme?\n");
 	printf("7-Listagem?\n");
 	printf("8-Excluir filme?\n");
 	printf("9-Excluir Cliente?\n");
 	scanf("%d",&op);
 		
 	 if(op == 1){
 	 	Locacao(cliente,filme);
 	 	
	  }else if(op == 2){ 
	  	CadastroFilme(filme);

	  }else if(op == 3){
	  	BuscarCliente(cliente);	  	
	  }else if(op == 4){
	  	BuscarFilme(filme);
	  	
	  }else if(op == 5){
	  	HistoricoLCliente(cliente,filme);
	  	
	  }else if(op == 6){
	  	HistoricoLFilme(cliente,filme);
	  	
	  }else if(op == 7){
	  	Listagem(cliente, filme);
	  	
	  }else if(op ==8){
	  	ExclusaoFilme(filme);
	  }else if(op ==9){
	  	ExclusaoCliente(cliente);
	  }
 		
 	
	 }while(op!=0);
	
 }

 

Revise this Paste

Your Name: Code Language: