هل يعلم احد عمل ال Magic Box
وهو عبارة عن 3*3
مربعات، حيث ان المجموع الأفقي والعمودي مجموعهم متساوي
حد عنده فكررة عن كيفية عمل هذا البرنامج بال تجربة العشوئية Randomize
هل يعلم احد عمل ال Magic Box
وهو عبارة عن 3*3
مربعات، حيث ان المجموع الأفقي والعمودي مجموعهم متساوي
حد عنده فكررة عن كيفية عمل هذا البرنامج بال تجربة العشوئية Randomize
لقد قمت بعمل برنامج مشابه بلغة الباسكال او السي سابحث لك عنه او ساقوم بعمل برنامج اخر
طبعا كل ما عليك فعله هو اخذ الارقام 1..9 بالترتيب ثم ضعها في مصفوفة بشكل عشوائي لكن قبل ان تضعه قم بفحص الموقع اذا كان يساوي ا لصفر او قم بعمل عشواية للحصول على موقع اخر
ثم تأتي دالة الفحص للاعمدة والصفوف اذا كان كل الاعمدة يساوي 15 تكون قد وصلت للحل
انا بعرف الي قلتلي عليه، بس كييف اطبقه؟؟؟؟؟؟؟؟؟؟
انا لا اشك بقدرتك كمبرمج في حل هذه المشكله السهله
يمكنك اتباع الخطوات السابقة للحل واستخدام احدى لغات البرمجة مثل السي او البيسك
وإذا وجدت اي صعوبة او مشكلة اسأل وسوف تجد الجواب بإذن الله
إن شاء الله ساقوم بانزال الحل بعد اسبوعين من الان بلغة السي لكي يستفيد منها الجميع
سأكون عند وعدي ان شاء الله
هذا البرنامج فكرته ليست صعبة
وحلّه يعتمد على فكرة الحلقات المتداخلة أو الاستدعاء الذاتي للإجراءات التعاودية
وإذا أردتم أقوم بكتابته وأرفقه لكم
تم تعديل هذه المشاركة بواسطة مهند عبادي في 20 مايو 2004 في 01:33
اه، انا بدي اياه للفيجوال بيسك!! ممكن
غير قابل للتحميل!!! ممكن ترسله لايميلي؟
:) شكرا زبط
بس بدي طلب اخير وهو انه يحسب المجموع ( يعني يعطي نتيجة الجمع)
بدون اوقت!!
أخي الكريم
فكرة الكود أصبحت عندك .. ولا أظن أن إضافة الجميع شيء صعب ..
حاول أن تعملها بنفسك وإذا لم تفلح اذكر لنا ما عملت وسنساعدك إن شاء الله
مشكور اخي مهند
فكرة الكود حلوة جدا الاستدعاء الذاتي
وان شاء الله ساقوم بعمل طريقة اخرى لهذة المشكلة
زي ما بدك :)
شكرا
اهلا اخي nanooooooosh
هذة هي الطريقة التانية اتمنى ان تعجبك تقوم بتعبة المصفوفة بشكل عشوائي
على العموم لا تهتم اذا واجهتك اي مشكلة اثناء البرمجة لن نتخلى عن مساعدتك بإذن الله وارجو منك ان تقوم بعرض البرنامج في المنتدى بعد ان تقوم ببرمجته لكي يستفيد منه اغلب الاعضاء.
واتمنى لك التوفيق..
Dim Arr(1 To 10) As Integer Dim B As Boolean Dim i, j As Integer For i = 1 To 10 Arr(i) = 0 Next i For i = 1 To 10 B = True While B j = Rnd() * 9 + 1 If Arr(j) = 0 Then Arr(j) = i B = False End If Wend Next i
شكرا كتيييييييييير يا j programmer
:)
عملت ال فورم وكل شي
ودخلت الكود
بس ما صار شي !!!
لماذا تتوقع مني حل المسألة ؟
انا فقط ساساعدك في حلها ...
والكود الذي وضعته هو حل المشكلة التي واجهتك
اما للوصول الى البرنامج الذي تريده فقم باستخدام هذة الفكرة
لم يبق عليك سوى بعض البرمجة الروتينية للوصول للحل
شرح هذا الكود انه يقوم بوضع القيم من 1 ... 10 في المصفوفة بشكل عشوائي
لم يبق عليك الا دالة الفحص
توقعت لانه هيك اامنتدى شغال
وعلى كل نحنا اسفين
وما راح اتوقع شي تاني مرة بهالمنتدى!!!
والكود مو زي ما بدي!!!
أخي nanooooooosh
لا تزعل ولا يهمك ..
فقط اشرح لي بالضبط ما هو طلبك
شكرا يا مهند لاهتمامك
كلك ذوق والله
وما قصرت
شكرا الك يا J PROGRAMMER
السلام عليكم شباب
قرأت موضوع الصندوق السحري و أود المشاركة بفكرة البرنامج
اولا انشئ 9 texts و أعطها جميعا نفس الاسم و لنفرض أنه op ستصبح الtexts في مصفوفة op(0) _ op(8 ضعها مرتبة بحيث ان رقم صفر يكون اعلى اليسار و رقم 8 اسفل اليمين..
اضف زر للنموذج و اضف اليه الكود التالي:
من قال لا إله إلا الله صادقا دخل الجنة
موقعي للتعارف و تبادل الأخبار http://www.xybond.com
l1:for i=1 to 9
l2:op(i).text=int(rnd*9) //to choose a random numberl
for j=0 to i-1
if op(i).text=op(j).text then goto l2
next
next
rem the 9 texts will have different numbers
for i=0 to 6 step 3
if not val(op(i).text)+val(op(i+1).text)+val(op(i+2).text)=15 goto l1
next
rem that was to check horisontal lines
for i=0 to 3
if not val(op(i).text)+val(op(i+3).text)+val(op(i+6).text)=15 goto l1
next
rem that was to check vertical lines
من قال لا إله إلا الله صادقا دخل الجنة
موقعي للتعارف و تبادل الأخبار http://www.xybond.com
في غلط بالكود هشام، ما اشتغل معي صح!!
السلام عليكم
l1:for i=0 to 8
op(i).text=int(rnd*9) ' to choose a random numberl
for j=0 to i-1
if op(i).text=op(j).text then goto l1
next
next
rem the 9 texts will have different numbers
for i=0 to 6 step 3
if not val(op(i).text)+val(op(i+1).text)+val(op(i+2).text)=15 goto l1
next
rem that was to check horisontal lines
for i=0 to 3
if not val(op(i).text)+val(op(i+3).text)+val(op(i+6).text)=15 goto l1
next
rem that was to check vertical lines
بعد التعديل ده الكود نفذ معاي
من قال لا إله إلا الله صادقا دخل الجنة
موقعي للتعارف و تبادل الأخبار http://www.xybond.com
ما اشتغل صح!!!
هذا الموضوع مغلق.