الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف اسوي دالة تختبر العدد الاولي

مغلق
بدأه مبرمجة ++C في 26 نوفمبر 2005 · 17 رد · 5,199 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

معليش عندي سؤال غبي شوي بس نسيت كيف اسويه

ابي اختبر هل العدد اولي والا لا ؟

العدد الأولي :: وهو العدد الذي يقبل القسمة على 1 وعلى نفسه فقط

كيف احط الشرط .. :unsure:

#2
 if ( x%2 != 0)  any thimgs;

joseph.gif

logo.gif

CCNA 640-802

مدونتي

#3

السلام عليكم،

أخي الساحر،

هذا الكود يفحص الرقم إذا كان يقبل القسمة على 2 أو لأ،

وليس ما تريده الأخت "مبرمجة C++ "

هذا هو الكود المطلوب:

#include <iostream.h>
#include <math.h>
void main()


    {
   	 int num;
   	 int count=0;
   	 char choice='y';
   	 while(choice =='y' || choice == 'Y')


       	 {
          cout << "Enter a number: ";
          cin >> num;
          for(int i=2; i<= pow(num,.5); i++)


              {
             	 if(num%i == 0)


                 	 {
                    count++;
                    break;
                 	 }
                  }
                  if(count == 0)
                 	 cout << "The number, " << num << ", is a prime number!" << endl;
                  else
                 	 cout << "The number, " << num << ", is not a prime number!" << endl;
                  cout << "Run program again? <y/n>: ";
                  cin >> choice;
               	 }
            }

وهذا الكود مبني على القاعدة الرياضية لفحص العدد فيما إذا كان أولياً أو لأ،

إذا احتجتم لتوضيح الكود أو النظرية الرياضية التي تم استخدامها في عملية فحص العدد فأنا جاهز،

أخوكم

علاء

:)

اللهم طهر أرض فلسطين من العملاء والخونة

#4
ala101 كتب:
         for(int i=2; i<= pow(num,.5); i++)

                  

انا لما كنت بعمله كنت بختار الcraiteria بتاعتى

i<=num/2

وعمرى ماسمعت عن جذر الرقم <_<

اشمعنى بقى :unsure:

#5

اختبـــار الأعداد الأولية

ستجدين مجموعة من الأكواد الجيدة و المُجربة

يا هاميس ادخلي الموضوع ده حتلاقي اجابة عن سؤالك

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#7

ثانكس فور الل

انا طبقت كود شبيه بكودك اخي ..

والحمد لله ضبط

#8
	divider = 2;
if((listSize % divider) == 0)
  {
       cout << "\nit is not a prime number\n";
    
    do{
     listSize = listSize + 1;
     divider++;
    }while((listSize % divider) == 0);
      
     cout << "\nlistSize " << listSize; 	 
  }

هذا طبعا الكود

بس ماعليكم من الليست سايز وجمع الواحد لان هذي حقت شي ثاني

بس داخل فيه حساب البرايم :rolleyes:

#9

أختي "مبرمجة ++C"

أنتي لم تستخدمي أي كود لفحص العدد فيما إذا كان أولي أم لا،

مثلاً،

لو كانت قيمة listSize = 9

جملة الشرط تنفذ الآتي : listSize % divider

9 mod 2

الجواب : 1 وليس 0

لذلك لن يتم الدخول في if block

مع أن العدد 9 ليس عدد أولي،

أفضل كود لفحص العدد فيما إذا كان أولي أم لا هو الذي أرفقته لك،

فهو مبني على نظرية رياضية،

الأخت H@mis

i<=num/2

هذا التعبير الرياضي غير دقيق أبداً

مثلاً لو كان ال i = 100

num/2 = 50

يعني سوف يتم فحص حلقة التكرار for-loop 50 مرة

في حين أنه يمكن بسهولة تنفيذ حلقة التكرار فقط 10 مرات لتنفيذ المهمة

 i<= pow(num,.5);

تفسير سبب اختيار الجذر موجود في موضوع

شغل مخك 30 كما ذكره الأخ أحمد

تحية طيبة،

اللهم طهر أرض فلسطين من العملاء والخونة

#11

اختي مبرمجه ممكن تشرحين كودك :rolleyes:

انا الكود الي جا في بالي هو انا نسوي اختبار للرقم الي بيدخله اليوزر هل هو يقبل القسمه على واحد وبرضو يقبل القسمه على نفسه فنو اطلعله رساله ان الرقم الي دخله اولي واذا لا فاطلعله انه مو اولي<<هذا الي دار في مخي اول ماقريت موضوعك B)

#12
$ماش ماهناش$ كتب:
اختي مبرمجه ممكن تشرحين كودك :rolleyes:

انا الكود الي جا في بالي هو انا نسوي اختبار للرقم الي بيدخله اليوزر هل هو يقبل القسمه على واحد وبرضو يقبل القسمه على نفسه فنو اطلعله رساله ان الرقم الي دخله اولي واذا لا فاطلعله انه مو اولي<<هذا الي دار في مخي اول ماقريت موضوعك B)

هذا أظرف حل :lol: جميع الأرقام في الكون تقبل القسمة على نفسها و على الواحد الصحيح الفكرة في الأعداد الأولية أنها تقبل القسمة على نفسها و الواحد الصحيح فقط

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#13

8

8

ياخي لاتضحك تراي ماني فاهمه المنهج :(

ويوم جيت اسوي فاهمه تفشلني كذا :unsure:

بعدين انا اقصد انو نختبرها اذا تقبل القسمه على نفسها ولا لا

واذا اقبلت نقول انها اوليه واذا لا فانو مو اوليه :wacko:

وانا الي كنت ناويه اوريكم حلي لبرنامج ثاني وطلع في ايروروقلت خل اسالهم منهم نستفيد يعني يوضحولي الاخطاء الي عندي بس ردك خلاني اتراجع :unsure:

#14

أنا لم أفهم سطراً من الرد أرجو الرد باللغة العربية أو على الأقل بلهجة مفهومة نوعاً ما

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#15

$ماش ماهناش$

حلك ليس بصحيح ،

مع أني فهمت كلامك إلا أنني مع رأي الأخ bashmohandes

أتمنى أن تستخدمي العربية الفصحى أو أن تكتبي بالإنجليزية حتى يفهم الجميع كلامك،

بالنسبة لحلك فهو للأسف خاطئ،

اقتباس
بعدين انا اقصد انو نختبرها اذا تقبل القسمه على نفسها ولا لا

واذا اقبلت نقول انها اوليه واذا لا فانو مو اوليه

لأن كل الأرقام في العالم تقبل القسمة على نفسها ما عدا الصفر!

بالتوفيق،

اللهم طهر أرض فلسطين من العملاء والخونة

#16

اعتذر عن لهجتي الغير مفهومه

وكذالك اعتقد اني لم افهم بعد ماالمطلوب او اني لم افكر بالشكل الصحيح

شكرا لكم

#17

أي عدد في الدنيا يقبل القسمة على نفسه و على الواحد الصحيح و ليس هذا شرط العدد الأولى فالعدد 4 عدد غير أولي و هو يقبل القسمة على نفسه و الواحد الصحيح. و الذي جعله غير أولى انه يقبل القسمة على أعداد أخرى (2 في هذا المثال)

فلا يمكن أن نقول أن العدد X هو أولي لأنه يقبل القسمة على نفسه و الواحد الصحيح .... بل الشرط الصحيح هو العدد X هو أولي لأنه يقبل القسمة على نفسه و الواحد فقط

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#18

انا خايف انك لما تقول فقط انها تفتكر ان هذا هو الشرط الوحيد "فقط"!!

الشرط هو ان لا يقبل القسة على اي عدد إطلاقا .. ماعدا نفسه و الواحد الصحيح!!

هذا الموضوع مغلق.

مواضيع مشابهة