Next: About this document ...

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

MAC 115 - Introdução à Computação para Ciências Exatas e Tecnologia

LICENCIATURA EM FÍSICA - PRIMEIRO SEMESTRE DE 2003

Segundo Exercício-Programa Devolução: 23 de maio


Seno e Cosseno

Neste exercício-programa, você deverá escrever um programa em C para imprimir juntos os gráficos das funções seno e cosseno. Mais especificamente, o seu programa deverá ter como entrada três números: dois números reais a e b, a < b, representando o intervalo em que queremos que as funções sejam calculadas e o terceiro número, um inteiro n > 0, que representará a qualidade do gráfico impresso conforme explicado abaixo.

Para imprimir o gráfico de cada uma destas funções, você deverá calcular o valor de cada uma delas em n pontos equidistantes do intervalo [a,b]. Seu programa deve imprimir os eixos e, no gráfico, assinalar o valor de sen(x) com x e o valor de cos(x) com +, como no exemplo de saída apresentado ao final. Quando os valores de sen(x) e cos(x) coincidem entre si ou com o eixo, seu programa deve assinalar o valor com *, como no exemplo.

O seu programa deve ter pelo menos as seguintes funções:

  1. seno, que tem como parâmetros dois números reais x e eps, e devolve o valor de seno de x, utilizando uma aproximação da série
    x - x3/3! + x5/5! - x7/7! + ... + (-1)ix2i+1/(2i+1)! + ...

    incluindo todas as parcelas até a primeira com valor absoluto < eps. Esta aproximação é válida para todo x.

  2. cosseno, que tem como parâmetros dois números reais x e senx, e devolve o valor de cosseno de x, utilizando a identidade cos(x)2 + sen(x)2 = 1.

Tome eps = 10-8.

A entrega do seu programa deverá ser feita no sistema panda.


Dica: Durante a fase de teste, você pode usar as funções seno e cosseno da biblioteca matemática. Para tanto, use o comando #include <math.h> no início do seu programa. As funções se chamam sin e cos.


Observações: considere as distribuídas no primeiro exercício-programa.


Digite a e b: 0 7
Digite n: 50
 -1                    0                     1  
 -+--------------------+---------------------+->
                       *                   x
                       | +                x
                       |    +             x
                       |       +         x
                       |         +     x
                       |           +  x
                       |            x+
                       |          x    +
                       |       x         +
                       |     x            +
                       |  x               +
                       *                  +
                    x  |                  +
                  x    |                  +
               x       |                 +
            x          |                +
          x            |              +
        x              |            +
      x                |          +
     x                 |        +
    x                  |     +
   x                   |   +
   x                   |+
   x                 + |
   x              +    |
    x          +       |
     x       +         |
      x    +           |
        *              |
       +  x            |
     +       x         |
    +          x       |
   +              x    |
   +                 x |
   +                   *
   +                   |  x
    +                  |     x
     +                 |        x
      +                |          x
        +              |            x
          +            |              x
            +          |                x
               +       |                 x
                 +     |                  x
                    +  |                  x
                       *                  x
                       |  +               x
                       |    +             x
                       |       +         x

Cristina Gomes Fernandes
2003-04-23