Departamento de Ciência da Computação - IME - USP

MAC0122 Princípio de Desenvolvimentos de Algoritmos

Segundo Semestre de 2020

INFORMAÇÕES SOBRE ENTREGA DE EPs

 

  A entrega de cada exercício-programa deve respeitar as seguintes instruções.

  1. (Cabeçalho) O exercício-programa deve ter um cabeçalho com o seguinte formato:
    /*    
     \__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__
    
      AO PREENCHER ESSE CABEÇALHO COM O MEU NOME E O MEU NÚMERO USP, 
      DECLARO QUE SOU O ÚNICO AUTOR E RESPONSÁVEL POR ESSE PROGRAMA. 
      TODAS AS PARTES ORIGINAIS DESSE EXERCÍCIO-PROGRAMA (EP) FORAM 
      DESENVOLVIDAS E IMPLEMENTADAS POR MIM SEGUINDO AS INSTRUÇÕES DESSE EP
      E QUE PORTANTO NÃO CONSTITUEM PLÁGIO. DECLARO TAMBÉM QUE SOU RESPONSÁVEL
      POR TODAS AS CÓPIAS DESSE PROGRAMA E QUE EU NÃO DISTRIBUI OU FACILITEI A
      SUA DISTRIBUIÇÃO. ESTOU CIENTE QUE OS CASOS DE PLÁGIO SÃO PUNIDOS COM 
      REPROVAÇÃO DIRETA NA DISCIPLINA.
    
      Nome:
      NUSP:
    
      main.c
    
      Referências: Com exceção das rotinas fornecidas no esqueleto e em sala
      de aula, caso você tenha utilizado alguma referência, liste-as abaixo
      para que o seu programa não seja considerada plágio.
      Exemplo:
    
      - função mallocSafe copiada de: 
    
           http://www.ime.usp.br/~pf/algoritmos/aulas/aloca.html
    
     \__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__
    */
      

     

  2. (Plágio) O exercício-programa é estritamente individual. Exercícios plagiados (copiados, colados), com ou sem eventuais disfarces, receberão nota ZERO

      Plágio é um comportamento que contraria as regras de nossa disciplina e o Código de Ética da USP. Destacamos o seguinte artigo:

    Artigo 23 - É vedado aos membros do corpo discente e demais alunos da Universidade:
    [...]
    II. lançar mão de meios e artifícios que possam fraudar a avaliação do desempenho, seu ou de outrem, em atividades acadêmicas, culturais, artísticas, desportivas e sociais, no âmbito da Universidade, e acobertar a eventual utilização desses meios.

     

  3. (Compilador) O monitor utiliza o gcc com as opções -Wall -std=c99 -pedantic -O2 para corrigir os programas. Se você utilizar algum outro compilador para desenvolver seu programa, antes de entregar verifique se o seu programa tem extensão .c, compila SEM WARNINGS e executa corretamente.

     

  4. (Entregas dos EPs) Para a entrega do EP, você deve usar a página de MAC0122 no sistema e-Disciplinas da USP. Nessa página, escolha a opção correspondente ao EP.
    Você pode entregar o EP quantas vezes quiser até as 23h55m do último dia do prazo de entrega.
    A última versão entregue é aquela que será corrigida. Encerrado o prazo, não serão mais aceitos EPs.

     

  5. (EP atrasado) Não são aceitos exercícios atrasados. Não deixe para entregar o seu EP na última hora. Para prevenir imprevistos como queda de energia, problemas com o sistema, problemas com a sua conexão com a internet, sugerimos que a entrega dos exercícios sejam feitas pelo menos um dia antes do prazo determinado.

     

  6. (Erros de sintaxe) Exercícios com erros de sintaxe (ou seja, erros de compilação) receberão nota ZERO. Não esqueça de verificar se o seu programa está compilando depois da inclusão do cabeçalho.

     

  7. (Arquivo fonte) O arquivo a ser entregue é somente aquele contendo o chamado programa fonte, ou seja, o arquivo com extensão .c, como, por exemplo, meuep.c. Não entregue o programa executável, o que tem extensão * (meuep*). Programas executáveis entregues receberão nota ZERO.

     

  8. (WARNINGS) Os exercícios que forem compilados e tiverem WARNINGS (avisos) serão corrigidos normalmente. Entretanto, avisos durante a compilação podem ser uma boa indicação de erros de lógica em seu programa. Por exemplo,
         if (a=b)
         {
             [. . .]
         }
    
    resulta em um WARNING, e provavelmente é um erro em seu programa (atribuição em vez de comparação). Procure portanto eliminar todas as fontes de WARNINGs. Para ativar a detecção de WARNINGs no compilador, você deve usar as opções -Wall -std=c99 -pedantic -O2.

     

  9. (Consistência dos dados) O seu programa não precisa fazer consistência dos dados de entrada. Isto significa que se, por exemplo, o seu programa pede um número entre 0 e 5 e o usuário dígita um número negativo, uma letra, um cifrão, uma arroba, etc., o seu programa pode travar o computador ou explodir sem ficar envergonhado.

     

  10. (Leiaute e documentação) Programas devem ser entendidos não só por computadores mas também, e principalmente, por seres humanos. Se você está à procura de sugestões sobre como indentar o seu programa, elas podem ser encontradas nas páginas Leiaute (=layout)  e  Documentação escritas por Paulo Feofiloff.