مشاهدة النسخة كاملة : استغلال الدالة العشوائية في انجاز وسائط تربوية
ثامر أبو بلقيس
16-08-2015, 11:37 PM
السلام عليكم ورحمة الله وبركاته
مشاركة مع الزملاء المهتمين بالوسائط التربوية
هذا نموذج مبســط و بسيط للإستئناس حول استغلال الدالة العشوائية
و الأمر CreateObject المهم في إنجاز نوعيه معينة في المسابقات
هنااا بعد ما يكتب الطالب المجموع يضغط من لوح المفاتيح على المفتاح 13
عند الخطأ تبدأ محاولة جديدة لاحظ عدد الصور المستعملة 2 فقط وهي كافية
http://www.gulfup.com/?UxLlww
سلام :abc_138:
عبود عبود
17-08-2015, 01:58 AM
عمل رائع وجهد مميز
جزاك الله خيرا
عبد الهادي بهاب
17-08-2015, 01:01 PM
السلام عليكم ورحمة الله وبركاته
مشاركة مع الزملاء المهتمين بالوسائط التربوية
هذا نموذج مبســط و بسيط للإستئناس حول استغلال الدالة العشوائية
و الأمر createobject المهم في إنجاز نوعيه معينة في المسابقات
هنااا بعد ما يكتب الطالب المجموع يضغط من لوح المفاتيح على المفتاح 13
عند الخطأ تبدأ محاولة جديدة لاحظ عدد الصور المستعملة 2 فقط وهي كافية
http://www.gulfup.com/?uxllww
سلام :abc_138:
ربي يحفظكم استاذنا على هذا التميز الدائم ادام الله تميزكم هنا و هناك
عبد الهادي بهاب
17-08-2015, 01:10 PM
المفتاح 13 بقصد به زر اادخال entre
عبد الهادي بهاب
17-08-2015, 01:52 PM
--------------------------------ABOU_BELKISS---------------------------------------------
if e_Key == 13 then
يقصد به استعمال زر الادخال يعني اذا استخدم المستخدم الزر هذا entre
و يعني اذا ضغط المستخدم e_Key على 13 و يعني زر الادخال entre في الكيبورد في لوحة المفاتيح فشغل الامر
و للمزيد من التوضيح عن كيفية تشغيل ازرار الكيبورد مع البرنامج هاهو فيديو للاستاذ احمد عبد الواحد
https://www.youtube.com/watch?v=FCf0t9Hlk_U
و ارقام e_key تجدها في
http://www.indigorose.com/webhelp/ams/Program_Reference/Misc/Virtual_Key_Codes.htm
هنا نجد كود الشرط المتعلق باجابة المستخدم
if String.ToNumber(Input.GetText(this))==c and u==1 or String.ToNumber(Input.GetText(this))==c1 and u==2 then
Audio.Load(CHANNEL_NARRATION, "AutoPlay\\Audio\\oui.mp3", true, false);
---------
فهمت انه اذا كانت الاجابة المكتوبة في ابنبوت تسازي لقيمة c وهي قيمة تعطيها دالة random العشوائية لعدد الصور و كانت قيمة u هي 1 يعني رقم السؤال المتعلق بعدد البرتقالات ..........او اكنت قيمة c1 وعي عدد الليمونات التي تعطيها دالة random لليمونات التي يجب ان تظهر مع قيمة السؤال u =2 المتعلق بالليمون .........اذا تحقق هذا الشرط فيكون الصوت oui.mp3 يعني صحيح
for i = 1,10 do
Page.DeleteObject("NewObject"..i);
Page.DeleteObject("Object"..i);
Page.Redraw();
end
في هذا الجزء فهمت انه يتعين من اجل كل قيمة للمتغير i من 1 الى 10 و هو العدد الاقصى للكائنات او الصور ان يمحي او يحذف كل عنصر يحمل هذا التسلسلو تصبح الصفحة كما كانت في الاول او خالية Page.Redraw .........اذا فهمت جيدا
يبدا الكود المتعلق بالبرتقال
d=0
c=0
for i = 1,Math.Random(1, 10) do
tblImageProps = {};
tblImageProps.ImageFile = "AutoPlay\\Images\\1.jpg";
tblImageProps.Height = 50;
tblImageProps.Width = 50;
tblImageProps.Y = d;
tblImageProps.X = 0;
Page.CreateObject(OBJECT_IMAGE, "NewObject"..i,tblImageProps);
d=d+50
c=c+1
end
يتعلق بانشاء كائن جديد هو صورة Image يعني لا داع لانشائها يديويا بل برمج مشروعك ان يتشئ هذا الكائن الصورة بمقياس 50/50 و يكون موقعه في الصفحة هو d التي تتغير في كل مرة يتغير فيها i ب50 درجة يحبث تكون صورة تحت صورة لان قيمة X=0 دائما ....الصورة دائما يستعديها من مجلد الصور المتعلقة بالبرتقال ..... ثم في الاخير الامر بانشاء الكائن Page.CreateObject(OBJECT_IMAGE, ................ ثم يضيف لقيمة c قيمة 1 و ل d قيمة 50
يبدا الكود المتعلق بالليمون
n=0
c1=0
for p = 1,Math.Random(1, 10) do
tblImageProps2 = {};
tblImageProps2.ImageFile = "AutoPlay\\Images\\2.jpeg";
tblImageProps2.Height = 50;
tblImageProps2.Width = 50;
tblImageProps2.Y = n;
tblImageProps2.X =50 ;
Page.CreateObject(OBJECT_IMAGE, "Object"..p,tblImageProps2);
n=n+50
c1=c1+1
end
نفس الشرح السابق فقط قيمة n تتعلق بموقع صورة الليمون عموديا اماc1 ففتعلق يقيمة عدد الصور
---------
يبدا الكود المتعلق بالسؤال الذي يظهر في الليبل في الاسفل وهو قيمة u العشوائية التي تتغير في كل مرة
u = Math.Random(1, 2);
if u == 1 then
Label.SetText("Label1", "مجموع حبات البرتقال");
elseif u == 2 then
Label.SetText("Label1", "مجموع حبات الليمون");
end
يبدا الكود المتعلق باللنتجية اذا كانت جابة الطالب خاطئة
TOTAL2 = TOTAL +10
TOTAL=TOTAL2
else
Audio.Load(CHANNEL_NARRATION, "AutoPlay\\Audio\\non.mp3", true, false);
Dialog.Message("ÚÒíÒí ÇáØÜÜÇáÈ", "ÚÏÏ ÇáäÞÜÜÇØ ÇáãÊÍÕá ÚáíåÇ".." "..(TOTAL2).."\r\n".."ãÍÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÇæáÉ ÌÏíÜÜÜÜÜÜÜÜÜÜÏÉ");
TOTAL = 0
TOTAL2=0
end
فهمت انه في كل مرة يضعط الطالب على زر entre يعطي قيمة 10 فاذا نجح تصبح TOTAL2 هي 10+10 للضغطة الثانية و هكذا فاذا اخطا المستخدم في تحديد العدد الصحيح يظهر ديالوج او نافدة لتخبره بانه حاول كذا مرة
اخر كود يتعلق بارجاع قيمة الانبوت فارغة "" يجعل مؤشر الماووس عليه focus
Input.SetText("Input1", "");
Page.SetFocus("Input1");
end
-----------------------------------------------------------------------------------------
ارجو ان اكون وفقت في فهم الكود ................
ثامر أبو بلقيس
17-08-2015, 03:39 PM
شكرا جزيلا الأستاذ عبود على المرور الطيب بارك الله فيك:abc_138:
-----------
أستاذ المحترف اقلي لك مني كل التقدير على هذه المشاركة المفيدة المميزة
أبدعت أخي بارك الله فيك كان يهمني وصول المعلومة إليك :abc_138:
------------------------
جزيل الشكر لكل من مر أو سيمر على هاته المحاولة
بالتوفيق:abc_138:
abohmam
20-08-2015, 07:07 PM
جزاك الله خيرا أخى الفاضل ثامر أبا بلقيس
ماشاء الله جهد مميز وابداع دائم
والشكر لأخينا المحترف على متابعتة ومدوامته
بالتوفيق
أبو يوسف
25-08-2015, 05:17 PM
جزاك الله خيرا اخانا أبا بلقس :abc_152: وبارك الله فيك
والشكر موصول للأخ أقلي للإيضاح
vBulletin® v3.8.11, Copyright ©2000-2024, abohmam