تمرین‌ها

تمرین ۱۲:

برنامه‌ی تشخیص اعداد اول در پایتون

برنامه‌ای به زبان پایتون بنویسید که یک عدد طبیعی را از کاربر دریافت کند و مشخص سازد این عدد اول است یا مرکب.

کد:
n = int(input("n = "))
if n<1:
    print("Error: n has to be a natural number")
else:
    counter = 0
    for i in range(1, int(n**0.5+1)):
        if n%i==0:
            counter +=1

    if counter == 1:
        print(n, "is a prime number")
    else:
        print(n, "is a composite number")

اجرا:
    ================= RESTART: C:\Prime Numbers.py ================
    n = 5
    5 is a prime number
>>>
    ================= RESTART: C:\Prime Numbers.py ================
    n = 97
    97 is a prime number
>>>
    ================= RESTART: C:\Prime Numbers.py ================
    n = 15
    15 is a composite number
>>>
    ================= RESTART: C:\Prime Numbers.py ================
    n = 1
    1 is a prime number
>>>

نسخه‌ی حرفه‌ای‌تر برنامه‌ی تشخیص اعداد اول در پایتون

برنامه‌ای به زبان پایتون بنویسید که به طور پیوسته اعداد طبیعی را از کاربر دریافت کند و مشخص سازد این اعداد اول هستند یا مرکب.

کد:
print("To exit the program => n = exit \n")
while True:
    n = input("n = ")
    n = n.lower()
    if n=="exit":
        break
    else:
        try:
            n = int(n)
            if n<1:
                print("Error: n has to be a natural number \n")
            else:
                counter = 0
                for i in range(1, int(n**0.5+1)):
                    if n%i==0:
                        counter +=1

                if counter == 1:
                    print(n, "is a prime number \n")
                else:
                    print(n, "is a composite number \n")
        except:
            print("Error: n has to be a positive integer \n")


اجرا:
    =========== RESTART: C:\Prime Number Recognition.py ===========
    To exit the program => n = exit 

    n = 7
    7 is a prime number 

    n = 13
    13 is a prime number 

    n = 93
    93 is a composite number 

    n = 113
    113 is a prime number 

    n = -8
    Error: n has to be a natural number 

    n = exit
>>>