المشاركات : 543
المواضيع 34
:
: 463
الإنتساب : Apr 2013
B.M.AbdelAziZ كتب :بارك الله فيك على التعقيب، ماكنت افكر فيه هو عدد صحيح موجب الذي نفسه هو عدد طبيعي وعندما كتبت اخطأت وكتبت عدد طبيعي موجب، تحدث معي هذه الاخطاء غالبا عندما اكتب بتسرع وانا اعمل فكثيرا تجد كلمة بدل اخرى أو حرف بدلا حرف أخر...
لا عليك يا استادنا عادي
اصلا الاجابة صحيحة عندما كتبت بالفرنسية
un nombre premier est un entier naturel qui admet exactement
deux diviseurs distincts entiers et positifs.
انت اخطات سهوا في الترجمة
على كل حال بارك الله فيك على المعلومات
المشاركات : 975
المواضيع 50
:
: 218
الإنتساب : Feb 2008
تمرين اكتب دالة تتحقق من نص مدخل اذا كان النص يساوي احد القيم التالية :
'aaa'
'bbb'
'ccc'
ترجع قمية True
الطالب 1
PHP كود :
CheckStr(s: string):Boolean;
begin
Result := False;
if s = 'aaa' then Result := True;
if s = 'bbb' then Result := True;
if s = 'ccc' then Result := True;
end;
الطالب 2
PHP كود :
CheckStr(s: string):Boolean;
begin
Result := True;
if not (s = 'aaa') then Result := False;
if not (s = 'bbb') then Result := False;
if not (s = 'ccc') then Result := False;
end;
الطالب 3
PHP كود :
CheckStr(s: string):Boolean;
begin
if s = 'aaa' then Result := True else
if s = 'bbb' then Result := True else
if s = 'ccc' then Result := True else
Result := False;
end;
نكتفي عند هذا الحد هناك حلول اخرى لكن لا احبب ان اثقل عليكم
ما هو احسن حل و
لماذا ؟
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج
ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
المشاركات : 56
المواضيع 4
:
: 0
الإنتساب : Jan 2011
لا يوجد أحسن خل
لأنه هناك حلان خاطئان
الحل الأول خطأ
لو كان المتغير = aaa
فإنه عند الشرط الثالث فإن result ستساوى false مخالف للحقيقة
الحل الثانى خطأ
لو كان المتغير = aaa
فإنه عند الشرط الثالث فإن result ستساوى false مخالف للحقيقة
الحل الثالث فقط هو الصحيح
الحل الأمثل سيكون بإستغلال التعليمة or
المشاركات : 975
المواضيع 50
:
: 218
الإنتساب : Feb 2008
السلام عليكم
حسنا كتبت الكود دون تجريب مع ذلك يبقى التمرين قائم
خالد على22
انت مخطأ الحل الاول صحيح جرب لو كان المتغير aaa ستعيد القيمة True غير مخالف للحقيقة كما تقول
الحل الثالث صحيح جرب كذلك ذلك
معك حق الحل الثاني خطأ...
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج
ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
المشاركات : 543
المواضيع 34
:
: 463
الإنتساب : Apr 2013
السلام عليكم
احسن حل برايي هو الحل 1 لانه الاسرع في التنفيد ، فسرعه تنفيد حلقة if .....then اسرع من تنفيد حلقة
if.... then.. else كما في اجابة الطالب رقم 3 اما اجابة الطالب 2 فهي خاطئة ولو عدل في الحل واعتبرناها صحيحة فتعليماتها تحتوي على not اي ان المعالج (ِCPU ) يقوم بعملين اولهما تنفيد التعليمة
if (s = 'aaa') ثم عملية النفي ب not ما يعني ان المعالج سيستغرق وقت اضافي لمعالجة تعليمات الدلة في الحل 2 .
طبعا الفرق في زمن التنفيد لا يظهر جليا في دوال او برامج من 3 او 4 تعليمات لكن في برامج من مئات الاسطر البرمجية يظهر الفرق والله اعلم واعدروني ان اخطات .
المشاركات : 975
المواضيع 50
:
: 218
الإنتساب : Feb 2008
السلام عليكم اخ بسام معك حق في كل ما قلته لكن تعلمية if/then/else احسن من if/then لانه مع تعليمة if/then/else لن ينفذ التعلميات التاليةاذا تحقق الشرط من البداية لكن مع تعلمية if/then سينفذ التعليمات التالية سواء تحقق الشرط او لم يتحقق ...نعم اخطأ الطالب 2 مرتين الخطأ الاول هو احتماله لوجود الصحيح اكثر من الخاطئ و هذا خطأ لانه عدد القضايا الصحيحة 3 و عدد القضايا الخائطة لا نهاية له مما اضطره بعد ذلك الى استخدام not و الخطأ الثاني كان عليه الخروج باستخدام exit او استخدام المعاملات المنطقية ليصبح الكود صحيح
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج
ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
المشاركات : 543
المواضيع 34
:
: 463
الإنتساب : Apr 2013
بارك الله فيك على المعلومات القيمة
اسف لم اركز مع التعليمة if ..then ..else :confused: شكرا للتوضيح والتنبيه في انتظار اسئلة اخرى
المشاركات : 56
المواضيع 4
:
: 0
الإنتساب : Jan 2011
s.fateh كتب :السلام عليكم
حسنا كتبت الكود دون تجريب مع ذلك يبقى التمرين قائم
خالد على22
انت مخطأ الحل الاول صحيح جرب لو كان المتغير aaa ستعيد القيمة true غير مخالف للحقيقة كما تقول
الحل الثالث صحيح جرب كذلك ذلك
معك حق الحل الثاني خطأ...
حسنا
لنفاضل بين الكود الأول و الثالث
الثالث أفضل
لأنه جمع الثلاثة شروط فى مقطع شرطى واحد
بينما الكود الأول تعامل مع الأكواد الثلاثة بثلاثة مقاطع