Skip to content

VideojogosLusofona/ic_2018_p1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

1º Projecto de Introdução à Computação 2018/2019

Descrição do problema

Pretende-se que os alunos, em grupos de dois, implementem um jogo da Roleta. O jogo deve começar por informar o utilizador que possui 100€ de créditos para apostar e mostrar a lista de comandos disponíveis.

O utilizador deverá fazer a sua aposta escolhendo a opção correspondente e indicando qual o valor que pretende apostar. Em seguida o utilizador deve selecionar uma das apostas possíveis:

  • apostar nos números pares
  • apostar nos números ímpares
  • apostar num número específico

O número 0 é o número da casa e portanto o utilizador nunca ganha se sair zero.

Após a definição da aposta, o utilizador pode dar ordem para rolar. Deverá ser gerado um número aleatório entre 0 e 36 (inclusivé) e deverá ser verificado se o utilizador ganhou ou perdeu. No caso de vitória, o utilizador deverá ganhar segundo o rácio definido para a aposta que fez:

  • Aposta par ou ímpar – 1 para 2
  • Aposta num número específico – 1 para 35

O jogo acaba quando o utilizador ficar sem créditos ou quando selecionar a opção de sair. O utilizador não pode dar ordem para rolar sem ter concluído a sua aposta e não pode apostar mais do que os créditos que possui.

Exemplo de execução

alt text

Opções Extra

  • Implementação de três níveis de dificuldade escolhidas ao iniciar o programa que estabelecem a aposta mínima em:
    • 1€ - beginner,
    • 10€ - normal,
    • 20€ - expert.
  • Implementação de um sistema que atrasa a operação de geração de números aleatórios para gerar alguma tensão. Deverá demorar cerca de 4 segundos até gerar o número e deve indicar o início e o progresso até o número estar gerado.
  • Correcta utilização do Git, incluindo haver commits de ambos os alunos do grupo.

Material a entregar

  • Um Ficheiro zip contendo:
  • Ficheiro .c com código devidamente comentado e indentado:
    • Deve implementar as funcionalidades pedidas.
    • Deve compilar sem erros e/ou avisos no compilador GCC e/ou Clang com as opções -std=c99 -Wall -Wextra -Wpedantic.
  • Ficheiro README.md em formato Markdown, contendo as seguintes secções:
    • Título
    • Nomes dos autores (primeiro e último) e respectivos números de aluno
    • Descrição da solução
    • Conclusões e matéria aprendida
    • Referências
      • Incluindo trocas de ideias com colegas, código aberto reutilizado e bibliotecas utilizadas
  • A pasta escondida .git, no caso de terem utilizado o git.

Forma de trabalho e data de entrega

A forma de obter, editar e submeter o trabalho será através do Moodle até às 23:59 de 13 de novembro de 2018. Trabalhos entregues depois desta data sofrem de uma penalização de 0.2 valores por dia.

Sobre o Git e GitHub

O Git é um sistema de gestão de código fonte, essencial para desenvolver qualquer tipo de Projectos. O GitHub, e plataformas semelhantes tais como o GitLab, BitBucket e NotABug, oferecem repositórios Git remotos e vários serviços associados (tracking de bugs, wikis, visualização de código, integração de ramos e por ai fora). Alguns tutoriais úteis e interessantes:

Software necessário e/ou útil para elaboração do Projecto

Peso na avaliação

O projecto vale 20% da nota final (4 valores) e a avaliação do mesmo será feita da seguinte forma:

  • 2,2 valores - Código (funcionalidade, indentação, comentários e compilação sem erros/warnings).
  • 1 valores - Relatório em formato Markdown.
  • 0,8 valores - Opções extra

Honestidade académica

Nesta disciplina, espera-se que cada aluno siga os mais altos padrões de honestidade académica. Isto significa que cada ideia que não seja do aluno deve ser claramente indicada, com devida referência ao respectivo autor. O não cumprimento desta regra constitui plágio (3).

O plágio inclui a utilização de ideias, código ou conjuntos de soluções de outros alunos ou indivíduos, ou quaisquer outras fontes para além dos textos de apoio à disciplina, sem dar o respectivo crédito a essas fontes. Os alunos são encorajados a discutir os problemas com outros alunos e devem mencionar essa discussão quando submetem os Projectos. Essa menção não influenciará a nota. Os alunos não deverão, no entanto, copiar códigos, documentação e relatórios de outros alunos, ou dar os seus próprios códigos, documentação e relatórios a outros em qualquer circunstância. De facto, não devem sequer deixar códigos, documentação e relatórios em computadores de uso partilhado.

Nesta disciplina, a desonestidade académica é considerada fraude, com todas as consequências legais que daí advêm. Qualquer fraude terá como consequência imediata a anulação dos Projectos de todos os alunos envolvidos (incluindo os que possibilitaram a ocorrência). Qualquer suspeita de desonestidade académica será relatada aos órgãos superiores da escola para possível instauração de um processo disciplinar. Este poderá resultar em reprovação à disciplina, reprovação de ano ou mesmo suspensão temporária ou definitiva da ULHT (2).

Referências

  • (1) Pereira, A. (2017). C e Algoritmos, 2ª edição. Sílabo.

  • (3) Nuno Fachada. (2017). Primeiro Trabalho de Introdução à Computação, Licenciatura em Videojogos, Universidade Lusófona de Humanidades e Tecnologias, Lisboa.

Licenças

Todo o código neste repositório é disponibilizado através da licença GPLv3. O enunciado e restante documentação são disponibilizados através da licença CC BY-NC-SA 4.0.

Metadados

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages