تحديات برمجيةالتحدي التاسع - حل التمرين الخامس بلغة C++
المطلوب
أكتب برنامج يطلب من المستخدم إعطائه عدد صحيح أكبر من 2 و خزنه في المتغير n
.
بعدها يقوم بطباعة جميع الأعداد الأولية ( Prime Numbers ) الموجودة بين 2 و n
.
معلومة: العدد الأولي هو العدد الذي يقبل القسمة على نفسه و على 1 فقط مثل الأرقام 1 - 3 - 5 - 7 - 11 - 13 - 17 إلخ..
الحل بلغة C++
int main() { int n; bool isPrime; do { std::cout <<("Enter a number: "); std::cin >> n; } while (n <= 1); std::cout << "All prime numbers between 2 and " << n << ": "; for (int i = 2; i <= n; i++) { isPrime = true; for (int j = 2; j <= i / 2; j++) { if (i % j == 0) { isPrime = false; break; } } if (isPrime) { std::cout << i << " "; } } char end; std::cin >> end; return 0; }
سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 12 عند التشغيل.
Enter a number: 12 All prime numbers between 2 and 12: 2 3 5 7 11