Питхон програм за проверу правог броја

Пример за проверу да ли је цео број прост број или не користи фор петљу и иф … елсе наредбу. Ако број није прост, у излазу се објашњава зашто то није прост број.

Да бисте разумели овај пример, требало би да имате знање о следећим Питхон програмским темама:

  • Питхон иф … елсе Изјава
  • Питхон за Лооп
  • Питхон се ломи и наставља

Цео позитиван број већи од 1 који нема других фактора осим 1, а сам број назива се прост број. 2, 3, 5, 7 итд. Су прости бројеви јер немају других фактора. Али 6 није прост (то је композитни) од, 2 x 3 = 6.

Изворни код

 # Program to check if a number is prime or not num = 407 # To take input from the user #num = int(input("Enter a number: ")) # prime numbers are greater than 1 if num> 1: # check for factors for i in range(2,num): if (num % i) == 0: print(num,"is not a prime number") print(i,"times",num//i,"is",num) break else: print(num,"is a prime number") # if input number is less than # or equal to 1, it is not prime else: print(num,"is not a prime number") 

Оутпут

 407 није прост број 11 пута 37 је 407 

У овом програму променљива нум се проверава да ли је проста или не. Бројеви мањи од или једнаки 1 нису прости бројеви. Стога настављамо само ако је број већи од 1.

Проверавамо да ли је нум тачно дељив са било којим бројем од 2 до нум - 1. Ако нађемо фактор у том опсегу, број није прост. Иначе је број прост.

Можемо смањити опсег бројева тамо где тражимо факторе.

У горњем програму наш опсег претраге је од 2 до num - 1.

Могли смо да користимо домет, range(2,num//2)или range(2,math.floor(math.sqrt(num))). Потоњи опсег заснован је на чињеници да композитни број мора имати фактор мањи од квадратног корена тог броја. У супротном, број је прост.

Можете да промените вредност променљиве нум у горе наведеном изворном коду да бисте проверили да ли је број прост или не за остале целобројне бројеве.

Занимљиви Чланци...