Kali ini saya akan membahas contoh berikutnya yaitu :
Uji keprimaan
seperti yang kita tau bilangan prima adalah bilangan yang mempunyai dua faktor, yaitu 1 dan bilangan itu sendiri
dari konsep tersebut dapat dibuat algoritma
function Prima(input x : integer)<-boolean
{ Menguji apakah x bilangan prima atau bukan.
Masukan: x
Keluaran: true jika x prima, atau false jika
x tidak prima.
}
Deklarasi
test : boolean
i : integer
Algoritma:
if x < 2 then { 1 bukan prima }
return false
else
if x = 2 then { 2 adalah prima, kasus khusus }
return true
else
test<-true
i<-2
while i<=(√x) and (test) do
if x mod y = 0 then
test<-false
else
i<-i - 1
endif
endwhile
{ not test or y < 2 }
return test
dari algoritma tersebut dapat di-coding kedalam bahasa C++
#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;
bool Prima(int x){
bool test;
int i;
if (x<2){
return false;}
else if (x==2){
return true;}
else{
test=true;
i=2;
while (i<=ceil(sqrt(x))&&test==true){
if (x%i==0){
test=false;
}
else{
i++;
}
}
return test;
}
}
int main(int argc, char *argv[])
{
int x;
cout<<"Masukkan bilangan : ";cin>>x;
if (Prima(x)==0){
cout<<x<<" bukan bilangan Prima"<<endl;}
else {
cout<<x<<" bilangan Prima"<<endl;}
system("PAUSE");
return EXIT_SUCCESS;
}
No comments:
Post a Comment