Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

تحديات برمجيةالتحدي التاسع - حل التمرين الرابع بلغة C#

المطلوب

قم بتعريف دالة إسمها IsPrime(), عند استدعاءها نمرر لها عدد, فترجع True إذا كان العدد عبارة عن عدد أوّلي ( Prime Number ) و ترجع False إن لم يكن كذلك.
بعدها قم بتجربة هذه الدالة في البرنامج.

معلومة: العدد الأولي هو العدد الذي يقبل القسمة على نفسه و على 1 فقط مثل الأرقام1 - 3 - 5 - 7 - 11 - 13 - 17 إلخ..


الحل بلغة C#

using System;
class Program
{
static bool isPrime(int n)
{
// إذا كان الرقم من الأساس أصغر أو يساوي 1 فعندها لا يعتبر عدد أولي
if (n <= 1)
{
return false;
}
// إذا كان الرقم الذي تم تمريره إليها أكبر من 1 عندها سيتم التأكد منه
else
{
// سنحاول قسمته على جميع الأعداد الموجودة إبتداءاً من الرقم 2 إلى نصف قيمه العدد الذي تم تمريره للدالة
for (int i = 2; i <= (n / 2); i++)
{
// إذا كان العدد الذي تم تمريره لها لا يمكن قسمته على أي رقم بين 2 و نصفه فعندها لا يعتبر عدد أولي
if (n % i == 0)
{
return false;
}
}
// إذا كان العدد الذي تم تمريره لها يمكن قسمته على أي رقم بين 2 و نصفه فعندها يعتبر عدد أولي
return true;
}
}
static void Main(string[] args)
{
Console.WriteLine("2 is a prime number? " + isPrime(2));
Console.WriteLine("3 is a prime number? " + isPrime(3));
Console.WriteLine("4 is a prime number? " + isPrime(4));
Console.WriteLine("5 is a prime number? " + isPrime(5));
Console.WriteLine("6 is a prime number? " + isPrime(6));
Console.ReadKey();
}
}
using System; class Program { static bool isPrime(int n) { // إذا كان الرقم من الأساس أصغر أو يساوي 1 فعندها لا يعتبر عدد أولي if (n <= 1) { return false; } // إذا كان الرقم الذي تم تمريره إليها أكبر من 1 عندها سيتم التأكد منه else { // سنحاول قسمته على جميع الأعداد الموجودة إبتداءاً من الرقم 2 إلى نصف قيمه العدد الذي تم تمريره للدالة for (int i = 2; i <= (n / 2); i++) { // إذا كان العدد الذي تم تمريره لها لا يمكن قسمته على أي رقم بين 2 و نصفه فعندها لا يعتبر عدد أولي if (n % i == 0) { return false; } } // إذا كان العدد الذي تم تمريره لها يمكن قسمته على أي رقم بين 2 و نصفه فعندها يعتبر عدد أولي return true; } } static void Main(string[] args) { Console.WriteLine("2 is a prime number? " + isPrime(2)); Console.WriteLine("3 is a prime number? " + isPrime(3)); Console.WriteLine("4 is a prime number? " + isPrime(4)); Console.WriteLine("5 is a prime number? " + isPrime(5)); Console.WriteLine("6 is a prime number? " + isPrime(6)); Console.ReadKey(); } }

سنحصل على النتيجة التالية عند التشغيل.

2 is a prime number? True
3 is a prime number? True
4 is a prime number? False
5 is a prime number? True
6 is a prime number? False
		

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة