miércoles, 19 de octubre de 2011
VIDEOS
view plainprint? class nodo { public: nodo *sig; float coef; int expo; public: nodo *crea_pol(nodo *p, int n); nodo *insertar_f(nodo *f,float coef, int expo); void suma(); void resta(); void multiplicacion(); void division(); void derivar(); void grado_pol(); void recorre(nodo *p); }; void main() { nodo *aux; char op; do { clrscr(); gotoxy(25,4);cout<<"OPERACIONES CON POLINOMIOS (1 variable)"; gotoxy(25,5);cout<<"ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ"; gotoxy(28,8);cout<<"1.-SUMA"; gotoxy(28,10);cout<<"2.-RESTA"; gotoxy(28,12);cout<<"3.-DERIVADA"; gotoxy(35,14);cout<<"ELIJA OPCION [ ]"; gotoxy(45,19);cout<<"->Presione 'ESC' para SALIR"; gotoxy(49,14);op=getch(); //cout<<"numero de terminos del polinomio";cin>>n; switch(op) { case '1':aux->suma(); break; case '2':aux->resta(); break; case '3': aux->derivar(); break; } }while(op!=27); } void nodo::suma() { nodo *r,*t,*f=NULL,*p=NULL,*q=NULL; int n; float suma; clrscr(); gotoxy(27,3);cout<<"SUMA DE POLINOMIOS\n\n"; cout<<"numero de terminos P(x): ";cin>>n; p=p->crea_pol(p,n); cout<<"numero de terminos Q(x): ";cin>>n; q=q->crea_pol(q,n); r=p; t=q; while(r!=NULL && t!=NULL) { if(r->expo==t->expo) { suma=r->coef+t->coef; if(suma!=0) { f=f->insertar_f(f,suma,r->expo); r=r->sig; t=t->sig; } } else { if(r->expo > t->expo) { f=f->insertar_f(f,r->coef,r->expo); r=r->sig; } else { f=f->insertar_f(f,t->coef,t->expo); t=t->sig; } } } while(r!=NULL) { f=f->insertar_f(f,r->coef,r->expo); r=r->sig; } while(t!=NULL) { f=f->insertar_f(f,t->coef,t->expo); t=t->sig; } cout<<"P(x)+Q(x)= ";f->recorre(f); } void nodo::resta() { nodo *r,*t,*f=NULL,*p=NULL,*q=NULL; int n; float resta; clrscr(); gotoxy(27,3);cout<<"RESTA DE POLINOMIOS\n\n"; cout<<"numero de terminos P(x): ";cin>>n; p=p->crea_pol(p,n); cout<<"numero de terminos Q(x): ";cin>>n; q=q->crea_pol(q,n); r=p; t=q; while(r!=NULL && t!=NULL) { if(r->expo==t->expo) { resta=r->coef-t->coef; if(resta!=0) { f=f->insertar_f(f,resta,r->expo); r=r->sig; t=t->sig; } } else { if(r->expo > t->expo) { f=f->insertar_f(f,r->coef,r->expo); r=r->sig; } else { f=f->insertar_f(f,t->coef,t->expo); t=t->sig; } } } while(r!=NULL) { f=f->insertar_f(f,r->coef,r->expo); r=r->sig; } while(t!=NULL) { f=f->insertar_f(f,t->coef,t->expo); t=t->sig; } cout<<"P(x)+Q(x)= ";f->recorre(f); } void nodo::derivar() { nodo *r,*p=NULL,*f=NULL; int n,d; float c; clrscr(); gotoxy(27,3);cout<<"DERIVADA DE POLINOMIOS\n\n"; cout<<"numero de terminos P(x): ";cin>>n; p=p->crea_pol(p,n); r=p; while(r!=NULL) { c=r->coef*r->expo; d=r->expo-1; if(c!=0) { f=f->insertar_f(f,c,d); } r=r->sig; } cout<<"DERIVADA DE P(x): ";f->recorre(f); } - See more at: http://codigoytecnologia.blogspot.com/2011/03/operaciones-con-polinomios-c.html#sthash.qR42CX6r.dpuf
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario