Ir ao conteúdo
  • Cadastre-se

Armazenamento de números e dados em c


Posts recomendados

Boa tarde, pessoal, tudo certo?

 

Estou com um problema em C que vem tirando meu sono: criar um algoritmo que permita gerar um número definido pelo usuário de funções (seja ela trigonométrica, linear, polinomial, logarítmica, etc), ou seja, pergunto para o usuário quantas funções ele deseja calcular e, em seguida, o intervalo para cada uma dessas funções (também será inserido pelo usuário). Pode parecer meio confuso, então vou colocar abaixo um trecho do que já fiz e os problemas relacionados. 

 

printf ("Quantidade de curvas desejadas: ");
    scanf ("%d", &QTDE_CURVAS); //quantidade de curvas desejadas pelo 
    
   
// estrutura com dados que todos os gráficos deverão ter.  

    struct Dados {
        float xmax, xmin; // valor mínimo e máximo do eixo x;
        char NOME_EIXO_X[30], NOME_EIXO_Y[30]; // nome dos eixos (pode ser temperatura, viscosidade, tempo, etc).
        int NUMERO_PONTOS; // quantidade de pontos que o usuário deseja ter no intervalo de xmax e xmin
    };
    
    
    
    for (i=0; i<QTDE_CURVAS; i++) {
        
        struct Dados CURVA; // CRIARÁ UMA STRUCT PRA CADA GRÁFICO 
        
            printf ("Dados da curva %d\n\n", i+1);
            printf ("Valor mínimo de x: ");
            scanf ("%f", &CURVA.xmin);
            
            printf ("Valor máximo de x: ");
            scanf ("%f", &CURVA.xmax);
            
            printf ("Nome do eixo x: ");
            scanf ("%s", &CURVA.NOME_EIXO_X);
            
            printf ("Nome do eixo y: ");
            scanf ("%s", &CURVA.NOME_EIXO_Y);
    
            printf ("Quantidade de pontos na curva: ");
            scanf ("%d", &CURVA.NUMERO_PONTOS);
            
            
            printf ("%f\n", CURVA.xmin);
            printf ("%f\n", CURVA.xmax);
            printf ("%s\n", CURVA.NOME_EIXO_X);
            printf ("%s\n", CURVA.NOME_EIXO_Y);
            printf ("%d\n", CURVA.NUMERO_PONTOS);
            
    }
 

 

Isso foi o que fiz até o momento. Porém, além de criar os valores das funções, preciso calcular os números do eixo x e y e salvar para depois, em outro laço, conseguir imprimir. Já tentei utilizar matriz multidimensional e ponteiros, mas não deu certo. Preciso de ajuda pois não sei se estou no caminho certo, se há uma forma mais fácil de criar isso, ou até mesmo se é possível fazer isso em C.

 

Por fim, caso minha explicação anterior tenha ficado confusa, vou tentar explicar de maneira mais sucinta o objetivo do programa:

 

O programa tem a função de calcular os valores de f(x)=y de diversas funções, tais como trigonométrica, exponencial, log, etc;

Assim, o usuário diz quantas funções deseja calcular (QTDE_CURVAS);

O programa, por sua vez, inicia perguntando os dados referentes a primeira curva, como o intervalo (xmin e xmax) nome dos eixos, e a quantidade de pontos a ser calculada nesse intervalo;

*O programa calcula os pontos e salva-os na memória. Por exemplo, uma função linear f(x)=2x no intervalo de -1 e 1. Assim, os valores a serem salvos de f(x) serão -2, 0 e 2. 

Caso o usuário digite um número maior do que um na quantidade de curvas, perguntar novamente os valores xmin e xmax, quantidade de pontos e nome dos eixos e calcule outra função qualquer. Pode ser sen x em um intervalo de -pi a pi com 300 pontos. 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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...