Материал: Отчет по практическим

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Мы видим, что из случайно выбранных чисел выделяются 773, 401, 193, 523. Эти числа действительно являются простыми числами.

Листинг программы, написанный в процессе изучения генерации псевдо простых чисел.

import random def pherma(p_int, b_arr): pherma_yes = 0 for i in b_arr: if i**(p_int-1)%p_int == 1: pherma_yes += 1 return pherma_yes/len(b_arr) def solovey(p_int, b_arr): solovey_yes = 0 for i in b_arr: deg = int((p_int - 1) / 2) if i ** deg % p_int == 1 or i ** deg % p_int == p_int - 1: solovey_yes += 1 return solovey_yes/len(b_arr) if __name__ == "__main__": n_of_tests = 200 b = [random.randint(10,1000) for _ in range(n_of_tests)] print("Число\tТест Ферма\tТест Соловея-Штрассена") for i in range(20): p = random.randint(100, 1000) print("{}\t{}\t{}".format(p, pherma(p, b), solovey(p,b)))

Санкт-Петербург

2019

Источник: https://studfile.net/preview/16436387/