Public
Snippet $48 authored by Owo Sugiana

Mencari Bilangan Prima

bilangan-prima.py
# https://www.advernesia.com/blog/matematika/pengertian-bilangan-prima-adalah/


class Prima:
    def __init__(self, maks=100):
        self.data = []
        for i in range(maks+1):
            self.is_true(i)

    def is_true(self, n):
        def benar():
            self.data.append(n)

        if n < 2:
            return
        if n in (2, 5):
            return benar() 
        if n % 2 == 0:
            return
        s = str(n) 
        if s[-1] in ('0', '5'):
            return
        total = 0
        for ch in s:
            i = int(ch)
            total += i
        if total % 3 == 0:
            return
        for p in self.data:
            if n % p == 0:
                return
        return benar() 


p = Prima()
for i in p.data:
    print(i)