Selasa, 21 Februari 2012

Program Polinomial...


Program Polinomial;
Uses Wincrt;
Type Larik = Array [1..10] of Integer;

var P1,P2,HP: Larik;
    i,n,m,o: Integer;

Procedure Input(q:integer; var P:Larik);
Begin
  for i := q+1 downto 1 do
    begin
      Write('nilai dari pangkat ke-',i-1,': ');Readln(P[i]);
    end;
End;

Procedure Tampil(q:integer; P:Larik);
Begin
  for i := q+1 downto 1 do
    begin
      if P[i]<>0 then
        if i=q+1 then
            Write(P[i],'x^',i-1)
         else if P[i]>0 then
            begin
              if i=1 then
                 Write('+',P[i])
              else if i=2 then
                 Write('+',P[i],'x')
              else
                 Write('+',P[i],'x^',i-1);
            end
         else  
            begin
              if i=1 then
                 Write(P[i])
              else if i=2 then
                 Write(P[i],'x')
              else
                 Write(P[i],'x^',i-1);
            end;
    end;
End;

Begin
  Clrscr;
  Writeln('Program Penjumlahan 2 Polinomial');
  Writeln('================================');
  Write('Masukkan Jumlah Pangkat Tertinggi Polinomial Ke-1:
');Readln(n);
  Input(n,P1);
  Write('P1 = ');
  Tampil(n,P1);
  
  Writeln;Writeln;
  Write('Masukkan Jumlah Pangkat Tertinggi Polinomial Ke-2:
');Readln(m);
  Input(m,P2);
  Write('P2 = ');
  Tampil(m,P2);

  if m>n then
     o:=m
  else
     o:=n;

  Writeln;
  Writeln;
  Write('Hasil Polinomial (P1+P2): ');

  for i := o+1 downto 1 do
    HP[i]:=P1[i]+P2[i];
  Tampil(o,HP);
End.

Tidak ada komentar:

Posting Komentar