#!/usr/bin/env python import sys # untuk mengambil argument yang diberikan ret=True # return value def itsPrime(val): # definisi fungsi itsprime, return(1=prime, 0=not prime, -1=error value ) global ret; # agar ret bisa diakses dari fungsi if val >= 2: # jika nilai yang diberikan besar dari 2 if val > 9: # jika nilai yang diberikan besar dari 9 up=10 # nilai maksimum untuk pembagian =10 else: up=val # jika tidak maka nilai maksimum=nilai yang diberikan for p in range(2,up): # perulangan selama p=2 dan kecil dari nilai up if val % p == 0: # jika nilai modulus p == 0 ret=False # berarti bukan bilangan prime break # langsung keluar dari perulangan else: # nilai yang dimasukkan kecil dari 2 ret=-1 return ret if __name__ == "__main__": try: prime=itsPrime(int(sys.argv[1])) if prime==1: print 'prime' elif prime==0: print 'Not prime' else: print 'Please integer above 2' except ValueError: print "Please enter an integer number" except IndexError: print "Please input one argument"Penjelasan dari kode diatas bisa dilihat di setiap baris komentarnya, untuk yang lainnya bisa dilihat dibawah ini
- baris ke 20 -> untuk mencegah kemungkinan error maka digunakan try
- baris ke 21 -> melakukan checking terhadap nilai yang diberikan kemudian nilai return dari fungsi itsPrime dimasukkan ke variabel prime, selanjutnya untuk yang dibawahnya adalah melakukan checking pada nilai prime. Jika nilainya sama dengan 1 berarti bilangan prima, 0 jika bukan, -1 jika nilainya kecil dari 2.
- baris ke 28 -> jika nilai yang dimasukkan bukan bilangan bulat positif(>0)
- baris ke 30 -> jika tidak ada nilai yang dimasukkan.
Sedangkan algoritma dari code diatas adalah seperti berikut:
Tulisan ini dibuat dengan OS Ubuntu 9.10, Gimp 2.6.7, Dia 0.97, so itsOPENSOURCE
0 comments:
Post a Comment