Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

jessicavieira

polinômio - alocação

Recommended Posts

oi pessoal...

gostaria de ajuda na implementaçao de um programa para armazenar um polinômio dinamicamente. O programa deverá ler um monômio por vez (coeficiente e grau) e realocando memória.

 

me ajudem desde ja agradeço..

 

ja fiz uma parte mas quando tento continuar da erro

 

CODE
main(){

int coef,grau,*v,i=1,coeficiente,gr;

char op;

 

v=(int*)malloc(sizeof(int)*1);

printf("Digite o coeficiente: \t");

scanf("%d",&coef);

 

v=(int*)malloc(sizeof(int)*1);

printf("\nDigite o grau: \t");

scanf("%d",&grau);

 

//monomio1[4]=coef+'x'+grau;

//printf("o monomio 1 eh: %s\n", monomio1);

printf("\no monomio eh: %dx%d: \n\n",coef,grau);

 

printf("deseja digitar outro monomio?");

scanf("%s",op);

if(op=='s' || op=='S'){

do{

v=(int*)realloc(sizeof(int)*1);

printf("Digite o coeficiente: \t");

scanf("%d",&coeficiente);

v=(int*)realloc(sizeof(int)*i+1);

printf("Digite o grau: \t");

scanf("%d",&gr);

 

i++;

printf("deseja digitar outro monomio?");

scanf("%c",&op);

}while(op=='s' || op=='S');

}

if(op=='n' || op=='N'){

printf("o polinomio eh: %dx%d", coef,grau);

}

getche();

}

o programa soh executa a ate a leitura do monomio

me ajudem please!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu faria um pouco diferente...

 

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

struct termo {
 int potencia;
 float coeficiente;
};

void imprime (struct *P,int qtde) {
 int i;
 for (i=0; i<qtde; i++)
 printf("Coeficiente: %f \t Potencia: %d\n",P[i].coeficiente,P[i].potencia);
}

int main(void) {
 struct termo ** polinomio;
 int potencia;
 float coeficiente;
 int qtde,i;

 printf ("Forneca a quantidade de monomios:");
 scanf("%d",&qtde);
 polinomio = (struct termo **)malloc(qtde*sizeof(struct termo *));
 polinomio[0] = (struct termo *)malloc(0);

 for(i=0; i<qtde;i++) {
 printf("Digite um coeficiente e uma potencia inteira:");
 scanf("%f %d",&coeficiente,&potencia);
 polinomio[0]  = (struct termo *)realloc(polinomio[0],i*sizeof(struct termo));
 polinomio[0][i].coeficiente = coeficiente;
 polinomio[0][i].potencia = potencia;
 }

 imprime(P[0],qde);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.