Ir para conteúdo
Fórum Script Brasil

AurélioG

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre AurélioG

AurélioG's Achievements

0

Reputação

  1. Bom.. Eu fiz uma agenda de compromissos.. e to tendo problemas na hora de editar o compromisso! o codigo esta com algum erro plz respondam! /** == Includes ================================================================================== **/ #include <iostream> //Agenda de compromissos #include <fstream> #include <string> #include <conio.h> #include <stdio.h> /** == Defines e Variaveis Globais =============================================================== **/ #define MaxReg 200 int controledecampo; using namespace std; /** == Structs =================================================================================== **/ struct Data { //structs para serem lidos no arquivo principal int dia; int mes; int ano; }; struct Horario { int hora; int min; }; struct Compromisso { char descricao[200]; char prioridade[6]; }; struct Exibecompromisso { Data data; Horario horario; Compromisso compromisso; }; /** == Declarando Funções ======================================================================== **/ void inserircompromisso(Exibecompromisso exibecompromisso[MaxReg], int i); //protótipo das funções void pesquisarcompromisso(Exibecompromisso exibecompromisso[MaxReg], int i); void mostratudo(Exibecompromisso exibecompromisso[MaxReg], int i); void menueditar(); void editar(Exibecompromisso exibecompromisso[MaxReg], int i); /** == Main ====================================================================================== **/ int main() { int opcao; controledecampo = 0; struct Exibecompromisso exibecompromisso[MaxReg]; do { system("cls"); cout<<"*****Agenda de compromissos*****"<<endl<<endl; cout<<"Menu de opcoes: - Registros: "<< controledecampo <<endl<<endl; cout<<"(0) Inserir novo compromisso"<<endl ; cout<<"(1) Pesquisar compromisso"<<endl; cout<<"(2) Sair"<<endl<<endl; cout<<"Digite a opcao desejada:"<<endl; cin>>opcao; switch(opcao) { case 0: inserircompromisso(exibecompromisso,controledecampo); break; case 1: pesquisarcompromisso(exibecompromisso,controledecampo); break; default: cerr<<"Opcao invalida"<<endl<<endl; } } while(opcao!=2); } /** == Funções =================================================================================== **/ void mostratudo(Exibecompromisso exibecompromisso[MaxReg], int i) { char a; char decide; cout<<"Os compromissos são:"<<endl; system("pause"); cout<<"\nData:"<<endl; cout<<exibecompromisso[i].data.dia<<"/"; cout<<exibecompromisso[i].data.mes<<"/"; cout<<exibecompromisso[i].data.ano<<endl; system("pause"); cout<<"\nHorario:"<<endl; cout<<exibecompromisso[i].horario.hora<<":"; cout<<exibecompromisso[i].horario.min<<" h"<<endl; system("pause"); cout<<"\nDescricao:"<<endl; cout<<exibecompromisso[i].compromisso.descricao<<"."<<endl; system("pause"); cout<<"\nPrioridade:"<<"\n"; cout<<exibecompromisso[i].compromisso.prioridade<<"."<<endl; cout<<"Deseja Editar/Remover/Continuar?E/R/C"<<endl; cin>>decide; if(decide=='E' || decide=='e') { editar(exibecompromisso,i); } if(decide=='R' || decide=='r') { exibecompromisso[i]=exibecompromisso[--controledecampo]; exibecompromisso[i].data.dia=0; exibecompromisso[i].data.mes=0; exibecompromisso[i].data.ano=0; exibecompromisso[i].horario.hora=0; exibecompromisso[i].horario.min=0; cout<<"\n Este compromisso foi removido"<<endl; system("pause"); } } // fecha a funcao mostratudo void inserircompromisso(Exibecompromisso exibecompromisso[MaxReg],int iRegistro) { int i; bool bVerify; ofstream escritor; escritor.open("agenda.txt",ios::app); if(escritor.is_open()) { i = iRegistro; bVerify = true; while(bVerify) { cout<<"Digite o dia do compromisso(entre 1 e 31)"<<endl; cin>>exibecompromisso[i].data.dia; if(exibecompromisso[i].data.dia>31 || exibecompromisso[i].data.dia<0){ cerr<<"Dia invalido!\n"<<endl; } else { escritor<<exibecompromisso[i].data.dia<<"/"; bVerify = false; } } bVerify = true; while(bVerify) { cout<<"Digite o mes do compromisso(entre 1 e 12)"<<endl; cin>>exibecompromisso[i].data.mes; if(exibecompromisso[i].data.mes>12 || exibecompromisso[i].data.mes<0){ cerr<<"Mes invalido!\n"<<endl; } else { escritor<<exibecompromisso[i].data.mes<<"/"; bVerify = false; } } bVerify = true; cout<<"Digite o ano do compromisso"<<endl; cin>>exibecompromisso[i].data.ano; escritor<<exibecompromisso[i].data.ano<<endl; while(bVerify) { cout<<"Digite a hora do compromisso"<<endl; cin>>exibecompromisso[i].horario.hora; if(exibecompromisso[i].horario.hora>23 || exibecompromisso[i].horario.hora<0){ cerr<<"Hora invalida!\n"<<endl; } else { escritor<<exibecompromisso[i].horario.hora<<":"; bVerify = false; } } bVerify = true; while(bVerify) { cout<<"Digite os minutos do compromisso"<<endl; cin>>exibecompromisso[i].horario.min; if(exibecompromisso[i].horario.min>59 || exibecompromisso[i].horario.min<0) { cerr<<"Minutos Invalidos!\n"<<endl; } else { escritor<<exibecompromisso[i].horario.min<<endl; bVerify = false; } } bVerify = true; cout<<"Descreva o compromisso(usando_nos espacos em branco)"<<endl; cin>>exibecompromisso[i].compromisso.descricao; escritor<<exibecompromisso[i].compromisso.descricao<<endl; while(bVerify) { cout<<"Informe a prioridade do compromisso: alta, media ou baixa?"<<endl; cin>>exibecompromisso[i].compromisso.prioridade; if ( strcmp(exibecompromisso[i].compromisso.prioridade, "alta") != 0 && strcmp(exibecompromisso[i].compromisso.prioridade, "media") != 0 && strcmp(exibecompromisso[i].compromisso.prioridade, "baixa") != 0 ) { cerr<<"Prioridade Invalida!\n"<<endl; } else { escritor<<exibecompromisso[i].compromisso.prioridade<<endl; bVerify = false; } } bVerify = true; cout<<"\n\n Compromisso salvo com sucesso"<<endl; escritor.close(); controledecampo++; } else { cerr<<"Erro ao abrir o arquivo"<<endl; } system("pause"); } void pesquisarcompromisso(Exibecompromisso exibecompromisso[MaxReg], int i) { ifstream leitor; char a,b,c[100],d[5]; leitor.open("agenda.txt"); if(! leitor.is_open()) { cerr<<"Erro ao abrir o arquivo"<<endl; system("pause"); } leitor>>controledecampo; while(controledecampo>0) { Exibecompromisso registro; leitor>>a; leitor>>b; leitor>>c; leitor>>d; cout<<a<<endl; cout<<b<<endl; cout<<c<<endl; cout<<d<<endl; system("pause"); controledecampo--; } leitor.close(); } void menueditar(){ cout << "\n\tVoce deseja editar:\n\n"; cout << "\n\n\t \xC9\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBB\n"; cout << "\t \xBA \t\t\t1) Dia.\t\t\t\t\xBA\n"; cout << "\t \xBA \t\t\t2) Mes.\t\t\t\t\xBA\n"; cout << "\t \xBA \t\t\t3) Ano.\t\t\t\t\xBA\n"; cout << "\t \xBA \t\t\t4) Horas.\t\t\t\t\xBA\n"; cout << "\t \xBA \t\t\t5) Minutos.\t\t\t\t\xBA\n"; cout << "\t \xBA \t\t\t6) Descricao.\t\t\t\t\xBA\n"; cout << "\t \xBA \t\t\t7) Prioridade.\t\t\t\t\xBA\n"; cout << "\t \xBA \t\t\t8) Sair.\t\t\t\t\xBA\n"; cout << "\t \xC8\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xCD\xBC\n"; }// fecha a funcao menueditar void editar(Exibecompromisso exibecompromisso[MaxReg], int i) { system("cls"); int opcao,valor; char vetor[200]; menueditar(); while(opcao !=8) { cout << "\n\t Codigo: "; cin>>opcao; switch(opcao) { case 1: cout << "\n\n\tDia: "; cin>>valor; if(valor==exibecompromisso[i].data.dia) { exibecompromisso[i].data.dia=valor; } else { getch(); system ("cls"); mostratudo( exibecompromisso, i); menueditar(); } break; case 2: cout << "\n\n\tMes: "; cin>>valor; if(exibecompromisso[i].data.mes == valor) { valor = exibecompromisso[i].data.mes; } else { getch(); system ("cls"); mostratudo( exibecompromisso, i); menueditar(); } break; case 3: cout << "\n\nAno\t: "; cin>>valor; if(exibecompromisso[i].data.ano == valor) { valor = exibecompromisso[i].data.ano; } else { getch(); system ("cls"); mostratudo( exibecompromisso, i); menueditar(); } break; case 4: cout << "\n\nHoras\t: "; cin>>valor; if(exibecompromisso[i].horario.hora == valor) { valor = exibecompromisso[i].horario.hora; } else { getch(); system ("cls"); mostratudo( exibecompromisso, i); menueditar(); } break; case 5 : cout << "\n\nMinutos\t: "; cin>>valor; if(exibecompromisso[i].horario.min == valor) { valor = exibecompromisso[i].horario.min; } else { getch(); system ("cls"); mostratudo( exibecompromisso, i); menueditar(); } break; case 6 : cout << "\n\nDescricao\t: "; cin>>vetor; if(exibecompromisso[i].compromisso.descricao == vetor) { strcpy(exibecompromisso[i].compromisso.descricao, vetor); } else { getch(); system ("cls"); mostratudo( exibecompromisso, i); menueditar(); } break; case 7 : cout << "\n\nPrioridade\t: "; cin>>vetor; if(exibecompromisso[i].compromisso.prioridade == vetor) { strcpy(exibecompromisso[i].compromisso.prioridade, vetor); } else { getch(); system ("cls"); mostratudo( exibecompromisso, i); menueditar(); } break; default: cerr<<"Codigo invalido"<<endl; }//fecha switch }//fecha while }//fecha função editar vlw
×
×
  • Criar Novo...