Ir ao conteúdo
  • Cadastre-se

C Problema envolvendo arquivos e trigonometria!!


PauloRicardoo

Posts recomendados

Olá! Eu estou tentando resolver este exercício...

Citação

 

Escreva um programa que abra o arquivo "seno.txt", que contém uma série de valores de seno, na forma:

seno1

seno2 ...

E a partir disso gere o arquivo "senocosseno.txt", contendo os valores de radianos, seno e cosseno para cada um dos valores do arquivo original. Seu programa NÃO DEVE usar funções trigonométricas como cosseno e arco seno. No lugar disso seu programa deve ler uma tabela trigonométrica de um arquivo chamado "trigo.txt", em que cada linha apresenta os valores de seno e cosseno para um dado ângulo, medido em graus. Essa tabela vai de 0 a 90 graus, sempre para valores inteiros de ângulo. Cada linha do arquivo é da forma "angulo seno cosseno". Observar que o arquivo "seno.txt" tem uma quantidade desconhecida de valores de seno e que esses valores não necessariamente correspondem a ângulos de valor inteiro de graus.

seno.txt: https://docs.google.com/document/d/1m8X6saqUrge8G_kmWhqJsqQDvzTnU7S00fH5J_0LwdY/edit?usp=sharing

trigo.txt:  https://docs.google.com/document/d/1U9JhGx3NTUSxpruxhTnWA7gBO2cakNlzPNCxiXqFn6I/edit?usp=sharing

 

E encontrei algumas dificuldades. Até agora, o meu código é assim:

#include <stdio.h>
#include <stdlib.h>

int main(void) {
    FILE *fp1, *fp2, *fp3;
    fp1 = fopen("seno.txt", "r");
    fp2 = fopen("trigo.txt", "r");
    fp3 = fopen("senocosseno.txt", "w");
    double rad, cos, i, sen1, sen2, ang;
    if (!fp1)
        exit(1);
    while (fgets(sen1, 5, fp1)!=NULL)
        fputs(sen1, fp3);
    cos² = 1 - sen1²;
    if (sen1 > sen2) {
        rad = 0.0174532925*ang;
    }
    for (i = 0; i < 5; ++i)
  {
   fprintf(fp3, "Radiano: %d \n Seno: %d \n Cosseno: %d\n", rad, sen1, cos);

    };
    
    printf("Arquivo 'senocosseno.txt' criado com sucesso");
    fclose(fp3);
    return 0;
}

Porém, essa solução não está funcionando. Alguém tem sugestões de como posso melhorar o código e resolver o problema? 🤔

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...