Instruções de Entrega

Instruções para os Trabalhos Computacionais

Os trabahos computacionais serão avaliados segundo os seguintes critérios:

A entrega desta primeira parte deve ser feita até a data combinada, enviando mensagem para angelocl [arroba] gmail.com, colocando no assunto: [EXA045]. Devem ser entregues os arquivos do código fonte (.C), contendo como preâmbulo o relatório do trabalho. Não submeta o arquivo executável (.EXE)!

Exemplo do formato de um programa a ser entregue


/********************************************************************************

Programa: Contagem de números

Autor: Fulano de Tal

Disciplina: Técnicas de Programação

Concluido em: 14/08/2006

Breve Descrição:

  Este programa faz a leitura de n números

  e conta quantos são positivos, negativos e nulos.

Operação do Programa:

  O usuário deve fornecer os valores conforme solicitados pelo programa.

  Os valores são solicitados, um por vez, por uma mensagem que indica a

  posição do valor esperado na seqüência de dados de entrada. Após a

  digitação o usuário deverá pressionar a tecla ENTER para disparar o

  processo de leitura. Para processar seqüências de tamanho diferente de 10,

  o valor da constante N deve ser alterado no código e o código recompilado.

  Ao final deste processo, são apresentados os resultados da quantidade de

  positivos, negativos e nulos.

Condições de Contorno :

 O programa aceita quaisquer valores inteiros no intervalo de inteiros representáveis

 pelo tipo integer. Dados, que não atendam a sintaxe de inteiros em  C, provocarão

 um "erro fatal" e, conseqüentemente, a interrupção da execução do programa.

Testes realizados:

 O programa foi testado com algumas seqüências de valores apenas positivos,

 apenas negativos, de zeros apenas e com valores mistos. O programa se

 comportou da maneira esperada.

Observações:

 Dificuldades Encontradas

 As mensagens de solicitação de dados ao usuário apresentaram problemas de

 alinhamento sempre que o número de dígitos da variável i crescia. Para

 resolver o problema, passou-se a imprimir o valor de i de maneira "formatada"

 em um campo de 3 posições fixas. O código do programa funciona, portanto,

 para valores de n até 999. Para valores maiores, a dimensão do campo formatado

 precisa ser revisto.

 O que não foi feito

 O programa implementou todos os requisitos fornecidos na especificação.

 O que foi feito a mais

 Nenhum recurso não especificado foi implementado

 Sugestões

 O programa, ao invés de ter nele embutido o tamanho da seqüência,

 poderia solicitar este valor ao usuário.

 O programa poderia ser estendido para processar mais de uma seqüência

 de dados conforme solicitação do usuário.

Declaro que este código foi elaborado por mim de forma individual e não contém nenhum

trecho de código de outro colega ou de outro autor, tais como provindos de livros e

apostilas, e páginas ou documentos eletrônicos da Internet. Qualquer trecho de código

de outra autoria que não a minha está destacado com uma citação para o autor e a fonte

do código, e estou ciente que estes trechos não serão considerados para fins de avaliação.

********************************************************************************/

#include <stdio.h>

#define N 10

int main ()

  {

  int i, numero;

  int positivos, negativos, nulos; /** contadores **/

  /** inicialização dos contadores **/

  positivos = 0;

  negativos = 0;

  nulos = 0;

  /** solicitação e análise dos dados para determinar o número de

      valores em cada categoria **/

  printf("Entre com %d numeros inteiros.\n",N);

  for(i = 1; i<=N;i++)

   {

      printf("%d)",i);

      scanf("%d",&numero);

      /** análise do numero digitado para determinar categoria **/

      if (numero > 0)

        {

          printf("O numero %d e' maior que zero\n",numero);

          positivos++;

        }

      else

        if (numero < 0)

          {

            printf("O numero %d e' menor que zero\n",numero);

            negativos++;

          }

        else /** neste caso numero = 0 **/

          {

            printf("O numero %d e' nulo\n",numero);

            nulos++;

          }

    }

  /** impressão dos resultados **/

  printf("Na sequencia de %d numeros temos:\n",N);

  printf("  - Numeros positivos: %d\n",positivos);

  printf("  - Numeros negativos: %d\n",negativos);

  printf("  - Numeros nulos: %d\n",nulos);

}