at 5:03 AM

Python dan Bilangan Prima




#!/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.10Gimp 2.6.7Dia 0.97, so itsOPENSOURCE

Tulis Komentar dengan akun Facebook Anda.

0 comments:

Post a Comment