Mudanças entre as edições de "AULA Proposta de Projetos - Programação 1 - Engenharia"
Ir para navegação
Ir para pesquisar
Linha 28: | Linha 28: | ||
####Entra com o nome do aluno | ####Entra com o nome do aluno | ||
####Entra coma a matrícula. | ####Entra coma a matrícula. | ||
+ | ####Finaliza o registro. | ||
###Cenário 2: | ###Cenário 2: | ||
###Cenário 3: | ###Cenário 3: |
Edição das 14h25min de 14 de novembro de 2019
Projeto final
O aluno deve propor ao professor um projeto de sua preferência que respeite os requisitos mínimos. Sendo aceito deverá desenvolver o projeto e apresentá-lo.
Requisitos mínimos
- Utilizar funções (ao menos três além do main, sendo que devem receber argumentos e possuir retorno);
- Apresentar menu utilizando switch case;
- Utilizar Structs e Ponteiros;
- Utilizar bibliotecas (manipulação de strings, tempo, matemática);
- Utilizar diretivas de pré-compilação (define, compilação condicional);
- Utilizar comentários (mas sem excesso - usar nomes significativos de funções e variáveis);
- Utilizar breaks com moderação e não usar gotos;
- Realizar acesso a arquivo, lendo e escrevendo informações (busque requisitos que requerem persistência de dados);
Metodologia e Entregas
Etapa 1
Enviar arquivo no SIGAA até 19/11/19
- Apresentar a proposta de projeto ao professor. Construir um pequeno documento com o escopo do projeto contendo:
- Título do Projeto
- Integrantes da Equipe
- Descrição do que o programa vai executar (3 parágrafos)
- Descrição de Cenários de uso identificando os atores. Exemplo: em um sistema de controle de retirada de livros pode-se ter 2 atores: o aluno e o bibliotecário.
- Cenário 1: Cadastro de aluno - Ator principal: Bibliotecário
- Através de uma interface o bibliotecário seleciona inserção de alunos.
- Entra com o nome do aluno
- Entra coma a matrícula.
- Finaliza o registro.
- Cenário 2:
- Cenário 3:
- Cenário 1: Cadastro de aluno - Ator principal: Bibliotecário
- Descrição das principais estruturas de dados do programa.
- Exemplo: Os alunos serão representados por um vetor de estruturas. Cada estrutura será da forma da forma:
- Exemplo: Os alunos serão representados por um vetor de estruturas. Cada estrutura será da forma da forma:
struct tipo_aluno{
char nome[TAM_NOME];
char matricula[TAM_MAT];
};
</syntaxhighlight>
- Proposta de cronograma (defesa final 4/5 de 12): Exemplo:
- Semana 1 (de 17 a 23/11): Implementação dos cenários 1 e 2
- Semana 2 (de 24 a 30/11): Implementação dos cenários 3 e 4
- Semana 3 (de 1 a 5/12): Testes Finais
Etapa 2
- Controle de Desenvolvimento: postar código até dia 25/11
Etapa 3
- Controle de Desenvolvimento: postar código até dia 2/12
Etapa 4
- Defesa Individual: 4/5 de 12
Algumas ideias de projetos
- Sugestão geral: veja em outras disciplinas que processos podem ser automatizados e proponha um projeto que realiza esta tarefa como de cálculos diversos de eletrônica, de rádio transmissão, etc.
- Implementar software para realização de cálculos de eletrônica. Neste software um menu apresenta várias opções de cálculo como de potencia através de tensão e corrente, como obtenção do valor de um resistor, como solução de equivalência de paralelo de vários resistores e outras. Num arquivo texto pode ser armazenado um histórico de operações realizadas.
- Implementação de software para apostas na mega sena. Neste software são dadas sugestões de números para apostas de acordo com o número do sorteio da mega sena. Com este histórico armazenado é possível então entrar com um número de sorteio e digitar quais foram os números verdadeiramente sorteados na loteria federal checagem os acertos.
- sistema que controle individualmente as temperaturas das salas, monitorando em tempo real, permitindo alterações, adições e remoções das salas em tempo de execução.
- Implementar o jogo Pedra, papel ou tesoura. Neste jogo dois ou mais jogadores em diferentes computadores devem rodar um aplicativo que fará a leitura de um arquivo compartilhado. O algoritmo deve tratar as etapas do jogo (Setup do aplicativo, entrada na sala, escolha da figura e apresentação do resultado)
- Implementar o jogo da velha escrevendo em arquivo. Neste jogo dois jogadores em diferentes computadores devem rodar um aplicativo que fará a leitura de um arquivo compartilhado. O algoritmo deve tratar as etapas do jogo (Setup do aplicativo, entrada na sala, seleção das casas e apresentação do resultado)
- Implementar controle de empréstimo de objetos. Neste software o usuário poderá digitar nomes de objetos que emprestou, a pessoa a quem emprestou e automaticamente o software guarda a data. Deve haver uma opção para gerar relatório dos itens emprestados e opção para marcar a devolução (podendo manter o registro em histórico ou apagando o registro).
- Implementar software gerador de lista de compras. Neste software o usuário poderá digitar itens de supermercado com nome e quantidade. O software escreve num arquivo que poderá depois ser impresso. O software também pode ter função de numa segunda execução já trazer a antiga listagem digitada e permitir que o usuário apenas selecione novas quantidades ou inclua novos itens.
Uso de Interface Gráfica (GTK)