Solusi Javascript Hasil Kali Bilangan Prima yang Jumlahnya 12345
Terusik dengan soal matematika Olimpiade Sain Nasional (OSN) dibawah ini:
Jumlah dua bilangan prima adalah 12345, hasil kali kedua bilangan tersebut adalah...
- 24668
- 24686
- 26486
- 26686
Penulis sangat berkeinginan untuk menyelesaikan dengan menggunakan kode program.
Dan karena tidak ingin repot-repot, penulis menggunakan Javascript dengan tampilan kode sebagai berikut:
<html> <head> <title>Contoh Javascript</title> </head> <body> <script> function getNextPrime(x) { var ketemu=false; while(!ketemu){ x++; var lanjut=false; for(var i=2;i<x;i++){ if(x%i==0){ lanjut=true; break; } } if(lanjut)continue; ketemu=true; break; } return ketemu?x:-1; } var a=2,b=2; while(a<100000){ while(b<100000){ if(a+b==12345){ document.write(a+" "+b+" "+(a*b)); break; } b=getNextPrime(b); } a=getNextPrime(a); } </script> </body> </html>
Caranya, tentu saja dengan mencoba mengalikan satu-satu bilangan prima mulai dari 2 sampai 100000, dengan looping while.
Berdasarkan kode di atas, penulis menemukan jawaban jika bilangan prima pertama adalah 2, sedangkan yang kedua adalah 12343, dengan hasil perkalian 24686 sesuai jawaban b.
Komentar
Posting Komentar