gheorghe100 0 Posted May 10, 2019 Report Share Posted May 10, 2019 Pretende-se que construa um programa que permita fazer a gestão de reservas de uma sala de espetáculos com registo do nome do evento, data, hora, duração e nome de cliente. 1) Deverá incluir: a) O programa deverá ser estruturado usando programação modular, sempre que esta for aplicável (funções e procedimentos); b) Comentários e parâmetros; c) Pelo menos um ficheiro de texto; d) Um controlo que verifique se os ficheiros já existem no disco e mensagem em caso de erro; e) Permita a inserção, consulta e alteração dos dados dos ficheiros; f) Contenha um sistema de menus que permita a navegação por todo o projeto; g) Permita pesquisar e consultar os dados do ficheiro por um campo (por exemplo por data) . h) Possibilite a visualização no monitor do último registo. Link to post Share on other sites
iron 11 Posted May 10, 2019 Report Share Posted May 10, 2019 E somos nós que o vamos fazer? Cumprimentos, iron Link to post Share on other sites
Mikev 1 Posted May 10, 2019 Report Share Posted May 10, 2019 Pretende-se que eu, consiga emagrecer antes do verão para ir com um bom corpo para a praia. 1) fazer exercicio fisico; 2) levar uma vida saudável; 3) deixar de comer porcarias. Agora fora de brincadeiras, em vez de colocares aqui o enunciado, seria melhor se colocasses aqui o que já tens feito e no que realmente precisas de ajuda.. Assim certamente irás receber ajuda da nossa parte. Cumprimentos. C# 😍 Link to post Share on other sites
gheorghe100 0 Posted May 10, 2019 Author Report Share Posted May 10, 2019 (edited) On 5/10/2019 at 5:43 PM, Mikev said: Pretende-se que eu, consiga emagrecer antes do verão para ir com um bom corpo para a praia. 1) fazer exercicio fisico; 2) levar uma vida saudável; 3) deixar de comer porcarias. Agora fora de brincadeiras, em vez de colocares aqui o enunciado, seria melhor se colocasses aqui o que já tens feito e no que realmente precisas de ajuda.. Assim certamente irás receber ajuda da nossa parte. Cumprimentos. peço descupa tens razão. #include <stdio.h> #include <iostream> using namespace std; int op; struct registro { //estrutura do registro char nomeevento[40]; char nome[40]; char data[20]; char hora[20]; char duracao[40]; char status; } reg; char url[]="gestaoderesrvas.txt"; FILE *fp; void criar() { fp=fopen(url, "a"); if(fp==NULL) { cout<<"Ficheiro não existe"<<endl; }else do { printf("\n Digite o nome do evento ou <FIM> para sair:\n\n"); cin.ignore(); gets(reg.nomeevento); printf("\n Nome do cliente:"); gets(reg.nome); printf("\n Data:"); gets(reg.data); printf("\n Hora:"); gets(reg.hora); printf("\n Duração:"); gets(reg.duracao); fprintf(fp, "%s %s %s %s ",reg.nome, reg.data, reg.hora, reg.duracao); cout<<reg.nome<<" "<<reg.data<<" "<<reg.duracao<<" "<<endl; printf("\n Gravação feita com sucesso...\n\n"); }while(reg.nomeevento=="fim"); fclose(fp); } void sobre() { //Diz ao utilizador por quem foi feito o programa printf("\n\n"); printf("\t########################################################\n"); printf("\t# Programa feito por.: gheorghe #\n"); printf("\t########################################################\n\n\n"); printf("\t\t\tTecle <ENTER> para voltar"); } void busca() { int achou=-1,posicao=0; char datap[40]; { fp=fopen(url, "w"); if(fp==NULL) cout<<"Ficheiro não existe"<<endl; } printf("\nDigite a data a ser procurada:"); gets(datap); rewind(fp); while((!feof(fp))&&(achou==-1)) { if (!feof(fp)) {if ((datap, reg.data)==0) {if (reg.status=='0') {posicao=-2;} achou=1; } else{posicao++;} } else{posicao=-1;} } if (achou==-1) {posicao=-1;} fclose(fp); cout<<posicao; } void alterar(void){ int pos; if (pos==-1) { printf("\nNome inexistente no arquivo"); } else if(pos==-2) { printf("\nNome inexistente no arquivo!"); } else { fp=fopen(url, "w"); printf("\nNome :%s",reg.nome); printf("\nData:%s",reg.data); printf("\nHora:%s",reg.hora); printf("\nDuração:%s",reg.duracao); printf("\nDigite as informacoes corretas:"); printf("\nNome:"); gets(reg.nome); printf("\nData:"); gets(reg.data); printf("\nHora:"); gets(reg.hora); printf("\nDuração:"); gets(reg.duracao); reg.status='1'; fseek(fp,pos*sizeof(struct registro),SEEK_SET); { printf("\nErro na gravacao..."); } } fclose(fp); } void menu() { system("color 3"); cout<<"\n\n\n"; cout<<"\t########################################################\n"; cout<<"\t## ##\n"; cout<<"\t## Programa Gestão de reservas ##\n"; cout<<"\t## ##\n"; cout<<"\t########################################################\n\n\n"; cout<<"\t\t\t\t\ 1-Inserir dados\n"; cout<<"\t\t\t\t\ 2-Consultar os dados por data\n"; cout<<"\t\t\t\t\ 3-Alterar dados\n"; cout<<"\t\t\t\t\ 4-Sobre\n"; cout<<"\t\t\t\t\ 5-Sair\n"; cout<<"\nEscolha a sua opção: "; cin>>op; switch(op) { case 1: { criar(); break; } case 2: { busca(); break; } case 3: { alterar(); break; } case 4: { sobre(); break; } case 5: { cout<<"Obrigado, volte sempre.\n"; break; } } } main() { setlocale(LC_ALL,"Portuguese"); menu(); do{ system("cls"); menu(); system("pause"); } while(op!=5); } Edited May 13, 2019 by M6 Formatação de código. Link to post Share on other sites
HappyHippyHippo 1,162 Posted May 16, 2019 Report Share Posted May 16, 2019 On 5/10/2019 at 7:55 PM, gheorghe100 said: peço descupa tens razão. #include <stdio.h> #include <iostream> using namespace std; int op; struct registro { //estrutura do registro char nomeevento[40]; char nome[40]; char data[20]; char hora[20]; char duracao[40]; char status; } reg; char url[]="gestaoderesrvas.txt"; FILE *fp; void criar() { fp=fopen(url, "a"); if(fp==NULL) { cout<<"Ficheiro não existe"<<endl; }else do { printf("\n Digite o nome do evento ou <FIM> para sair:\n\n"); cin.ignore(); gets(reg.nomeevento); printf("\n Nome do cliente:"); gets(reg.nome); printf("\n Data:"); gets(reg.data); printf("\n Hora:"); gets(reg.hora); printf("\n Duração:"); gets(reg.duracao); fprintf(fp, "%s %s %s %s ",reg.nome, reg.data, reg.hora, reg.duracao); cout<<reg.nome<<" "<<reg.data<<" "<<reg.duracao<<" "<<endl; printf("\n Gravação feita com sucesso...\n\n"); }while(reg.nomeevento=="fim"); fclose(fp); } void sobre() { //Diz ao utilizador por quem foi feito o programa printf("\n\n"); printf("\t########################################################\n"); printf("\t# Programa feito por.: gheorghe #\n"); printf("\t########################################################\n\n\n"); printf("\t\t\tTecle <ENTER> para voltar"); } void busca() { int achou=-1,posicao=0; char datap[40]; { fp=fopen(url, "w"); if(fp==NULL) cout<<"Ficheiro não existe"<<endl; } printf("\nDigite a data a ser procurada:"); gets(datap); rewind(fp); while((!feof(fp))&&(achou==-1)) { if (!feof(fp)) {if ((datap, reg.data)==0) {if (reg.status=='0') {posicao=-2;} achou=1; } else{posicao++;} } else{posicao=-1;} } if (achou==-1) {posicao=-1;} fclose(fp); cout<<posicao; } void alterar(void){ int pos; if (pos==-1) { printf("\nNome inexistente no arquivo"); } else if(pos==-2) { printf("\nNome inexistente no arquivo!"); } else { fp=fopen(url, "w"); printf("\nNome :%s",reg.nome); printf("\nData:%s",reg.data); printf("\nHora:%s",reg.hora); printf("\nDuração:%s",reg.duracao); printf("\nDigite as informacoes corretas:"); printf("\nNome:"); gets(reg.nome); printf("\nData:"); gets(reg.data); printf("\nHora:"); gets(reg.hora); printf("\nDuração:"); gets(reg.duracao); reg.status='1'; fseek(fp,pos*sizeof(struct registro),SEEK_SET); { printf("\nErro na gravacao..."); } } fclose(fp); } void menu() { system("color 3"); cout<<"\n\n\n"; cout<<"\t########################################################\n"; cout<<"\t## ##\n"; cout<<"\t## Programa Gestão de reservas ##\n"; cout<<"\t## ##\n"; cout<<"\t########################################################\n\n\n"; cout<<"\t\t\t\t\ 1-Inserir dados\n"; cout<<"\t\t\t\t\ 2-Consultar os dados por data\n"; cout<<"\t\t\t\t\ 3-Alterar dados\n"; cout<<"\t\t\t\t\ 4-Sobre\n"; cout<<"\t\t\t\t\ 5-Sair\n"; cout<<"\nEscolha a sua opção: "; cin>>op; switch(op) { case 1: { criar(); break; } case 2: { busca(); break; } case 3: { alterar(); break; } case 4: { sobre(); break; } case 5: { cout<<"Obrigado, volte sempre.\n"; break; } } } main() { setlocale(LC_ALL,"Portuguese"); menu(); do{ system("cls"); menu(); system("pause"); } while(op!=5); } agora só falta saber qual é mesmo a dificuldade IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to post Share on other sites
Recommended Posts