در این جلسه تیم کدگیت را با آموزش عدد اول در سی شارپ همراهی کنید. پیش نیاز این آموزش شامل موارد زیر است:
عدد اول
عدد اول عددی طبیعی بزرگتر از ۱ است که بر هیچ عددی بجز خود و ۱ بخشپذیر نباشد. تنها استثنا عدد ۱ است که جزو این اعداد قرار نمیگیرد. اگرعددی طبیعی و بزرگتر از ۱ اول نباشد مرکب است.
رقم یکان اعداد اول بزرگتر از ۱۰ فقط ممکن است ارقام ۱، ۳، ۷، و ۹ باشد.
پیدا کردن رابطهای جبری برای اعداد اول جزو یکی از معماهای ریاضی باقیمانده است و هنوز کسی به فرمولی برای آنها دست نیافته است(ویکیپدیا)
عدد اول در سی شارپ
برای پیدا کردن اعداد اول، روش ساده ای وجود دارد. این روش این است که ما از عدد 2 شروع میکنیم و یکی یکی اعداد را بر عددی که میخواهیم اول بودنش را بدانیم تقسیم میکنیم و در دو صورت روش پایان میپذیرد:
- باقیمانده ما صفرشود
- توان دوم عددی که تقسیم میکنیم، ازعددی که میخواهیم اول بودنش را بدانیم، بزرگتر شود.
کد عدد اول در سی شارپ به صورت زیر است:
public static void Main (string[] args)
{
int n = 24;
bool isPrime = true;
if (n < 2) isPrime = false;
for (long factor = 2; factor*factor <= n; factor++) {
if (n % factor == 0) {
isPrime = false;
break;
}
}
if (isPrime) Console.WriteLine(n + " is prime");
else Console.WriteLine(n + " is not prime");
Console.ReadKey ();
}
همانطور که در کد عدد اول در سی شارپ میبینید ما یک متغیر به نام n تعریف کردیم. این متغیر عددی است که میخواهیم بدانیم اول است یا خیر. متغیر isPrime وقتی متغیر n اول باشد true میشود و در غیر این صورت false میشود.
در ادامه یک حلقه نوشته شده که از عدد 2 شروع میشود و یکی یکی به آن اضافه میشود. در حلقه، باقیمانده هر عدد بر n را میگیریم(تست اول بودن یا خیر). در آخر کد چاپ میکنیم عدد اول هست یا خیر.
عالیه.دمت گرم