Elabore um programa que possua uma função definida pelo usuário Tabelaseno, que receba como entrada um vetor de ângulos de 0 a 360 graus, em que os ângulos distam entre si, de 3 graus. No fim da execução do programa, o seu programa deverá mostrar os valores dos ângulos e os senos correspondentes a esses ângulos.

Passo 1

O problema pede um programa em C que tenha uma função definida pelo usuário chamada Tabelaseno. Essa função deve receber um vetor de ângulos (de 0 a 360 graus, em passos de 3\circ) e mostrar numa tabela cada ângulo e o respectivo seno. Para isso vamos precisar de:
  • Um loop em main para preencher o vetor de ângulos.
  • A função Tabelaseno que recebe o vetor e seu tamanho e, usando a função sin da <math.h>, imprime ângulo e seno (convertendo graus em radianos).

Passo 2

Dentro de main, declaramos o tamanho do vetor como
#define PASSO 3
#define \(MAX_ANGULO\) 360
#define N ((\(MAX_ANGULO\))/PASSO \(+1\))
e criamos um vetor int angulos[N]. Usamos um for para preencher:
for (int i \(=0\); i < N; i\(++\)) {
 angulos[i] = i * PASSO;
}

Passo 3

Declaramos o protótipo da função antes de main:
void Tabelaseno(int n, int angulos[]);
e depois implementamos essa função convertendo cada ângulo para radiano via
radianos = angulos[i] * PI / 180.0;
e imprimindo com printf("%3\(d\circ\)\t%.4f ", angulos[i], sin(radianos));.

Passo 4

Em main, após preencher o vetor, chamamos:
Tabelaseno(N, angulos);
e encerramos o programa com return 0;.

Resposta

#include <stdio.h>
#include <math.h>

#define PASSO 3
#define \(MAX_ANGULO\) 360
#define N ((\(MAX_ANGULO\))/PASSO \(+1\))
#define PI 3.141592653589793

/* Protótipo da função que exibe o ângulo e seu seno */
void Tabelaseno(int n, int angulos[]);

int main() {
 int angulos[N];

 /* Preenche o vetor com 0, 3, 6, ..., 360 */
 for (int i \(=0\); i < N; i\(++\)) {
 angulos[i] = i * PASSO;
 }

 /* Chama a função para imprimir a tabela de senos */
 Tabelaseno(N, angulos);

 return 0;
}

void Tabelaseno(int n, int angulos[]) {
 double radianos;
 printf("Ângulo\tSeno
");
 printf("------\t----
");
 for (int i \(=0\); i < n; i\(++\)) {
 radianos = angulos[i] * PI / 180.0;
 printf("%3\(d\circ\)\t%.4f
", angulos[i], sin(radianos));
 }
}

Exercícios relacionados