Cpp-04-06 - اعداد اول کدومان؟ خط به خط بهم توضیح بده
Cpp-04-06 - اعداد اول کدومان؟ خط به خط بهم توضیح بده
توضیحات :
🔹 برنامه تشخیص عدد اول در C++
1️⃣ تعریف عدد اول
-
عددی اول است اگر فقط بر یک و خودِ خودش بخشپذیر باشد.
-
یعنی تعداد بخشپذیریها = 2 → اول
-
تعداد بخشپذیریها > 2 → اول نیست
2️⃣ پیادهسازی در C++
3️⃣ توضیح کد
-
متغیر
nعدد وارد شده توسط کاربر است -
متغیر
counterبرای شمارش تعداد تقسیمهای بدون باقیمانده است -
حلقه
forاز 1 تاnاجرا میشود-
در هر مرحله چک میکنیم
n % i == 0 -
اگر درست بود،
counter++
-
-
بعد از حلقه، اگر
counter == 2بود → عدد اول، در غیر این صورت → عدد اول نیست
4️⃣ مثال اجرا
5️⃣ نکات و بهینهسازی
-
میتوانیم حلقه را تا
i <= sqrt(n)بچرخانیم تا سرعت بررسی عددهای بزرگ بسیار افزایش پیدا کند، چون بخشپذیریها بعد از ریشه دوم تکراری میشوند. -
از
do…whileهم میتوان استفاده کرد اگر بخواهیم حداقل یک بار حلقه اجرا شود (مثلاً برای دریافت مجدد ورودی در برنامه تعاملی).
لطفا برای گذاشتن نظرات خود وارد شوید