Skip to content

Pequeno projeto em C, implementando uma Agenda de Compromissos em modo texto.

Notifications You must be signed in to change notification settings

viniciuscrw/agenda-de-compromissos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

AgendaDeCompromissos

Pequeno projeto para aprendizado de programção em linguagem C, implementando uma Agenda de Compromissos em modo texto, feito para a disciplina de Linguagem de Programação 1.

Alguns dos recursos da linguagem que são trabalhados no projeto:

  • Estruturas (struct)
  • Ponteiros e alocação dinâmica de memória
  • Manipulaçao de arquivos
  • Ordenação de array

Segue a proposta do projeto:


Implemente uma agenda de compromissos que permita ao usuário realizar as seguintes operações:

  • Cadastrar compromissos
  • Alterar compromissos
  • Remover compromissos

Cada compromisso deve conter as seguintes informações mínimas:

  • Hora
  • Data
  • Título
  • Onde
  • Descrição
  • Horário de ativação do alarme

Restrições do Projeto

  • Lembre-se que cada compromisso deve ser único (para isso, comparamos uma chave tripla: hora, data e título do compromisso);
  • A agenda deve ser mantida num arquivo no disco;
  • Deve ser apresentado ao usuário um menu de opções que permita que ele manipule a agenda de forma fácil e objetiva;
  • Cada uma das funcionalidades deve ser implementada em funções separadas do programa principal (ex: cadastrar, remover, alterar, buscar, etc.);
  • Deve ser possível a visualização pelo usuário da agenda de várias formas: compromissos do dia, de uma semana, de um mês ou em ordem cronológica dos compromissos cadastrados;
  • Deve ser permitido procurar na agenda: por uma palavra chave na descrição ou no título, ou por uma data e hora específicas;
  • Deve permitir ao usuário limpar o arquivo, retirando os compromissos passados quando ele desejar (deve ser uma opção do tipo remover_anteriores que remove do arquivo todos os compromissos já passados até o momento da execução). É possível ainda remover um compromisso que ainda não tenha passado;
  • O seu calendário não deve ter restrição à data (desde que ser válida, qualquer data pode ser usada para agendar compromissos, (por exemplo 24 de agosto de 4050) nem à quantidade de compromissos agendados. A única restrição é o tamanho da memória disponível no seu computador.
  • Mais de um compromisso pode ser a cadastrado ao mesmo tempo. Dessa forma, use alocação dinâmica de memória para os registros de compromissos num vetor antes de gravá-los no disco.

About

Pequeno projeto em C, implementando uma Agenda de Compromissos em modo texto.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages