Viết chương trình cho phép chia hai đa thức để tìm đa thức thương

Viết chương trình cho phép chia hai đa thức để tìm đa thức thương

Viết chương trình cho phép chia hai đa thức để tìm đa thức thương và đa thức dư.

>> Viết chương trình cho phép nhân hai đa thức đã sắp xếp

>> Viết chương trình tính giá trị của đa thức A(x) với điều kiện không dùng biến mảng

Chương trình

Program Chia_da_thuc;

uses crt;

Type KM = array[0..10] of real;

Var A,B,C,AB,D: KM;

     i,n,cs,bc: byte;

Procedure NhapDT(Var A: KM; n:byte);

Var i: byte;

Begin

     For i:=n downto 0 do

     Begin Write('M[',i,']='); Read(A[i]);  End;

End;

Function BAC(A:KM;n:integer):Byte;

Var i:Byte;

Begin

    i:=n;

    While (A[i]=0) and (i> 0) do i:=i-1;

    BAC:=i;

End;


Procedure TRU(Var A:KM;B:KM;n:byte);

Var i: byte;

Begin

    For i:= 0 to n do A[i]:=A[i]-B[i];

End;

Procedure NHAN(Var C:KM;A,B:KM; Var n:byte);

Var i,j:byte;

    TAM:KM;

Begin

    n:=Bac(A,n)+Bac(B,n);

    For i:= 0 to 2*n do TAM[i]:=0;

    For i:= 0 to n do

       For j:=0 to n do TAM[i+j]:=TAM[i+j]+A[i]*B[j];

    For i:=0 to 2*n do C[i]:=TAM[i];

End;

Procedure INDT(A:KM;n:byte);

Var i: byte;

Begin

    if A[n] <> 0 then Write(A[n]:3:1,'x^',n);

    For i:=n-1 downto 0 do

     if A[i] <> 0 then

      if A[i] < 0 then write(A[i]:3:1,'x^',i) else Write('+',A[i]:3:1,'x^',i);

End;

Procedure DT_BAC(Var A:KM;Bac:byte;gt:real);

Var i:byte;

Begin

    For i:=1 to n do A[i]:=0;

    A[Bac]:=gt;

End;

Begin

     clrscr;

     Write('Nhap bac cua da thuc bi chia: ');Readln(n);

     Writeln('Nhap da thuc A: '); NhapDT(A,n);

     Writeln('Nhap da thuc B: '); NhapDT(B,n);

     clrscr;

     Write('Da thuc bi chia: ');Indt(A,n); Writeln;

     Write('Da thuc chia: ');Indt(B,n); Writeln;

     bc:=Bac(A,n)-Bac(B,n); {Luu bac cua da thuc C}

     For i:=1 to bc do C[i]:=0;

     While BAC(A,n) >= BAC(B,n) do

     Begin

         cs:=BAC(A,n)-BAC(B,n);

         C[cs]:=A[Bac(A,n)]/B[Bac(B,n)];

         Writeln('C[',cs,']=',C[cs]:3:1);

         DT_BAC(D,cs,C[cs]);Writeln;

         Write('Da thuc D:');

         Indt(D,n);

         NHAN(AB,B,D,n);Writeln;

         Write('Da thuc AB:');

         Indt(AB,n);Writeln;

         TRU(A,AB,n);

         Write('Da thuc A moi:');

         Indt(A,n);

     End;

     Writeln('Da thuc thuong: ');

     Indt(C,bc);

     Readln;

     Readln

End.
Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Tommy Tran

Tommy owner Express Magazine

Drupal Developer having 9+ year experience, implementation and having strong knowledge of technical specifications, workflow development. Ability to perform effectively and efficiently in team and individually. Always enthusiastic and interseted to study new technologies

  • Skype ID: tthanhthuy

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Người dùng Facebook ở Đức được phép dùng tên giả

Người dùng Facebook ở Đức được phép dùng tên giả

Bất kỳ công ty nào hoạt động tại Đức đều sẽ phải tuân theo bộ luật của đất nước này - ủy ban luật pháp tại Hamburg, Đức phán quyết

iOS-Android lặp lại cuộc chiến Mac-PC?

iOS-Android lặp lại cuộc chiến Mac-PC?

Smartphone và máy tính bảng đang dần trở thành máy tính cá nhân của thời đại ngày nay. Hai nhân vật chính đang chiếm lĩnh thị trường là iOS của Apple và Android của Google.

Headless Websites: Những vấn đề lớn là gì?

Headless Websites: Những vấn đề lớn là gì?

Headless website architecture is gaining traction and popularity. Nearly every developer I’ve spoken to in the past six months is excited about the potential, and with good reason

Tomdesgin.vn

 

Drupal Services