Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
Igor Ximenes

Armazenamento de números e dados em c

Recommended Posts

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. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×