تشخیص عدد اول (Prime)
عدد اول عددی طبیعیِ بزرگ تر از ۱ است که تنها بر ۱ و خودش بخش پذیر باشد. اعداد اول ستون فقرات نظریهٔ اعداد و پایهٔ بسیاری از الگوریتم های رمزنگاری (مانند RSA) هستند و تشخیص آن ها کاربرد علمی و آموزشی مهمی دارد.
بررسی اول بودن اعداد بزرگ با تقسیم های پیاپی بسیار کند است. این ابزار از آزمون قطعیِ میلر–رابین استفاده می کند که حتی برای اعداد بزرگ (تا ۶۴ بیت) پاسخ قطعی می دهد و در صورت اول نبودن، یک مقسوم علیه نمونه نشان می دهد.
کافی است عدد صحیح موردنظر را وارد کنید تا بی درنگ مشخص شود اول است یا خیر.
تعریف و مثال
روش تشخیص دستی (ریاضی هفتم و هشتم) و کد پایتون
روش سادهٔ مدرسه، تقسیم آزمایشی است: کافی است بررسی کنید عدد بر هیچ عددی از ۲ تا جذرِ خودش بخش پذیر نباشد؛ اگر بخش پذیر نبود، اول است. لازم نیست تا خودِ عدد پیش بروید، چون اگر مقسوم علیهی بزرگ تر از جذر وجود داشت، حتماً زوجِ کوچک ترش هم پیدا می شد. نمونهٔ کد پایتون:
def is_prime(n):
if n < 2:
return False
i = 2
while i * i <= n:
if n % i == 0:
return False
i += 1
return True
با این ابزار می توانید
- اول یا مرکب بودن هر عدد صحیح را فوری تشخیص دهید.
- برای اعداد مرکب، یک مقسوم علیه نمونه ببینید.
- اعداد بسیار بزرگ را با آزمون قطعی میلر–رابین بررسی کنید.
- مفهوم عدد اول را برای تمرین درسی و کنکور بیازمایید.
مثال کاربردی
عدد ۹۷ را وارد کنید؛ ابزار اعلام می کند «عدد اول است» چون هیچ مقسوم علیهی جز ۱ و ۹۷ ندارد. اما برای ۹۱ پاسخ «اول نیست» است و مقسوم علیه ۷ را نشان می دهد (۹۱ = ۷ × ۱۳).