next up previous
Next: About this document ...

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

MAC 115 - Introdução à Ciência da Computação

INSTITUTO DE FÍSICA - SEGUNDO SEMESTRE DE 2000

Primeiro Exercício-Programa (EP1) --- Data de entrega: até 11 de outubro de 2000.

\fbox {\fbox{\parbox[t]{11.0cm}{
\centerline {\phantom{a} }
\centerline{\bf {\Large {\sc ~ O Sistema Monetário de Gwonck ~ }}}
\centerline{\phantom{a}}
}}}

Em uma galáxia ainda não descoberta existe um planeta (ainda não descoberto, é claro!) chamado Gwonck, cujos habitantes, os Gwoncklos, estão divididos em três tribos:

Os sacerdotes Gwoncklos (tradicionalmente membros da tribo dos Heptacktilos) contam uma lenda de que no futuro um povo monstruosamente feio, que tem apenas duas mãos com 5 dedos cada, trará para Gwonck muitas novidades (conta a lenda que esse estranho povo é alimentado por máquinas que produzem uma estranha iguaria que eles chamam de big MAC-115).

Por causa de sua estranha forma, conta a lenda, esse povo utiliza para o comércio o sistema decimal de numeração, isto é, os número são escritos com algarismos de 0 a 9 (os Gwoncklos conhecem os algarismos arábicos). Por exemplo:

\begin{displaymath}1234 = 1*10^3 + 2*10^2 + 3 * 10^1 + 4*10^0. \end{displaymath}

Vários problemas podem aparecer na hora da realização de transações comerciais entre os habitantes de Gwonck e a estranha espécie. Observe que cada tribo de Gwonck dará um significado diferente para a mesma cadeia de dígitos decimais, já que os Pentacktilos usam base 5 (os números são escritos com os algarismos 0, 1, 2, 3 e 4), os Heptackilos usam base 7 (algarismos 0 a 6) e os Nonacktilos usam base 9 (0 a 8).

Sabendo disso (não sabemos como), o coronel Vollifof, chairman da divisão da SIA para assuntos interplanetários, o camarada Smith do comitê de avaliação do planeta Gwonck junto ao Komiternik e os grandes empresários Ronald MAC-115 e Wilvio Wantos resolveram contratar um grupo de jovens programadores (vocês!!) para a importantíssima tarefa de fazer um programa que, dada uma seqüência de números inteiros positivos (por exemplo o preço de um big MAC-115 ou de um baú) dá como saída esses números escritos nas bases 5, 7 e 9.

A tabela a seguir apresenta o resultado das conversões para os números 11 e 437:

Número Base
(base 10) 5 7 9
11 21 14 12
437 3222 1163 535

Observe que


 $11$ $ = 2*5^1 + 1*5^0$ $ = 1*7^1 + 4 * 7^0$ $ = 1*9^1 + 2 * 9^0$. 

$437$ $ = 3*5^3 + 2*5^2 + 2*5^1 + 2*5^0$ $ = 1*7^3 + 1*7^2 + 6*7^1 + 3 * 7^0$ $ = 5*9^2 + 3*9^1 + 5* 9^0$.

No último verão, Sua Alteza Real FHCONKC I, Príncipe Regente de Gwonck, baixou um decreto proibindo que qualquer produto custe mais do que dois milhares de kwacks (unidade monetária de Gwonck).






Faça um programa em C que executa conversão de bases. O seu programa deve

  1. ler um número inteiro positivo $N$ de conversões a serem realizadas;
  2. ler uma seqüência de $N$ números inteiros (entre 0 e 2000), e imprimir a representação desses números nas bases 5, 7 e 9.

Processe seu programa para os seguintes dados de entrada:

4 /* valor de N */
11
437
0
350


\fbox {\parbox[t]{10cm}{
\centerline {\phantom{a} }
\centerline{\Large {\sc Programa de Aquecimento}}
\centerline{\phantom{a}}
}}


Antes de entregar o primeiro Exercício-Programa (EP1) acima enunciado, você deve --obrigatoriamente-- fazer o seguinte PROGRAMA DE AQUECIMENTO (vale uma porcentagem da nota):

Faça um programa que converte um número representado na base 5 para a sua representação na base 10. Ou seja, o seu programa deve receber como entrada um número inteiro na base 5, e determinar a sua representação na base 10. Por exemplo, se for dado $1342$, então seu programa deve imprimir o número 222 (correspondente a $1*5^3 + 3*5^2 +
4*5^1 + 2* 5^0$).

Envie este programa (arquivo .c) por correio eletrônico ao endereço yoshi-epfisica@ime.usp.br. O envio deve ser feito antes da última aula de MAC-115 do mês de setembro. Você deve também entregar uma listagem ao seu professor na última aula de MAC-115 do mês de setembro.


OBSERVAÇÕES IMPORTANTES SOBRE OS EXERCÍCIOS-PROGRAMAS

Todos os exercícios-programas devem ter o seguinte cabeçalho:


           /********************************************************/
           /* Fulano de Tal                                        */
           /* Exercicio-Programa xx                                */
           /* Curso yy  - Turma zz  -- Professor:  Ciclano de Tal  */
           /* Computador: .....                                    */
           /* Compilador: .....                                    */
           /********************************************************/

1)
O exercício-programa é estritamente individual. Exercícios copiados (com ou sem eventuais disfarces) receberão nota ZERO.

2)
Exercícios atrasados não serão aceitos.

3)
Exercícios com erros de sintaxe (ou seja, erros de compilação) receberão nota ZERO.

4)
É muito importante que seu programa tenha comentários e esteja bem indentado, ou seja, digitado de maneira a ressaltar a estrutura de subordinação dos comandos do programa (conforme visto em aula). A avaliação dos exercícios-programas levará isto em conta.

5)
Você deve entregar num envelope (preferencialmente de plástico transparente):

6)
Cada programa deve ser executado tantas vezes quantas forem necessárias para testar todos os casos possíveis para as entradas. A escolha desses dados também influirá na sua nota.

7)
Guarde com você até o final do semestre, em seus disquetes, os arquivos de seus programas, pois eles podem ser solicitados pelo professor caso surja alguma dúvida. Guarde também as listagens que lhe serão devolvidas, nas quais está marcada a nota que você recebeu.

8)
Entregue o seu programa na urna (caixa de madeira) que fica em frente à sala 256 do Bloco A do IME-USP.




next up previous
Next: About this document ...
Yoshiko Wakabayashi
2000-09-19