int main()
{
int p[20], q[20], r[20], s[40];
int j,i,m,n;
if (n > m)
{ for ( i = 0; i < n ; i++)
r[i] = p[i] + q[i];
Write (" Hasil penjumlahan dua polynomial = ")
Read tampil(r,n);
}
else
{ for ( i = 0; i < m ; i++)
r[i] = p[i] + q[i];
Write (“Hasil penjumlahan dua polynomial = “)
Read tampil(r,m);
}
f. Halt
2. Algoritma perkalian polynomial
int main()
{
int p[20], q[20], r[20], s[40];
int j,i,m,n;
for (i = 0; i < n ; i ++ )
{ for ( j = 0 ; j < m ; j++ )
{ s[i+j] = s[i+j] + p[i] * q[j];
}
}
cout<<endl;
Write (" Hasil perkalian dua polymonial = )"
Read (s, m+n-1);
}
f. halt
3. Divide and Conquer merupakan salah satu bentuk pendekatan dalam menyelesaikan suatu
permasalahan. Pendekatan divide and conquer bekerja dengan cara memecah permasalahan menjadi
submasalah yang sama seperti masalah awal. Setiap submasalah diselesaikan secara terpisah dengan cara
rekursif. Solusi dari setiap submasalah akan digabung menjadi solusi masalah utama Dengan
menggunakan pendekatan divide and conquer, permasalahan perkalian polinomial dapat disederhanakan
sehingga kompliksitas waktunya lebih sederhana dari perkalian biasa. umumnya algoritma yang berbasis
divide and conquer dikerjakan secara rekurisf sehingga diperlukan ruang tambahan untuk melakukan
penyimpanan stack pemanggilan fungsi.
Sedangkan perkalian polinomial biasa tidak seperti penjumlahan, untuk menghitung koefisien
sebuah suku pada hasil perkalian dua buah polinomial berderajat 𝑁 dibutuhkan untuk
menghitung hasil perkalian dari 𝑁 buah koefisien dari setiap polinomial.
4. fungsi kali(a[], b[], x, y)
fungsi untuk mengkalikan bilangan polinomial. Parameter a[], b[], x dan y bertipe integer.
Variabel multi dan i bertipe integer.
{ *multi = new int[x+y-1]
for(i = 0; i < x+y-1; i++)
multi[i] = 0
void print(poly[], n)
fungsi untuk menampilkan bilangan polinomial. Parameter poly[] dan n bertipe integer.
variabel i bertipe integer.
{ for(i = 0; i < n; i++){
write(poly[i])
if(i != 0)
write(“x^”, i)
if(i != n-1)
write(“ + ”)
}
}
Algoritma utama
Algoritma untuk menampilkan bilangan polinomial yang sebelum dikali dan setelah dikali.
Dilakukan dengan fungsi kali(a[],b[],x,y) untuk kali bilangan polinomial dan void
print(poly[],n) untuk menampilkan bilangan polinomial. Variabel a[], b[], x, y dan multi
bertipe integer.
{ a[] = {3, 4, 10, 2, 9}
b[] = {5, 0, 8}
x = sizeof(a)/sizeof(a[0])
y = sizeof(b)/sizeof(b[0])
5. Seed sangat penting pada metode RNG dan LCM marena seed menjadi dasar perhitungan bilangan
random itu dimulai. Jika kita menggunakan seed yang sama setiap waktu, itu akan menghasilkan urutan
angka acak yang sama.