مشاهدة النسخة كاملة : المترجم الأسبوعي 4


الشهاب الحارق
25 Feb 2002, 08:24 PM
الوظيفة الرياضيات Math.random()


حمل التمارين (http://mypage.ayna.com/highspy/ActionScript/translate/random.zip)



width = 550 height = 400


هذه الوظيفة جاءت لتلغي الوظيفة السابقة في فلاش 4 random()

وهذه الوظيفة هي ذات أرقام أو الأعداد الطبيعية

وتبدأ من صفر فاصل صفر إلى صفر فاصل واحد

المهم كيف الاستفادة منها

هذه الوظيفة نستطيع التحكم بها إذا ما تمت مساعدتها بوظائف أخرى

مثلاً أريد الفلم أن يبدأ في أي مكان عشوائي ضمن الأحداث السيني والصادي


طيب تكون النصوص البرمجية كالتالي

طبعاً في داخل الفلم

_x = int(Math.random()*550);
_y = int(Math.random()*400);

الشرح أولاً _x تدل على الأحداث السيني للفلم وال _y الأحداث الصادي

نقول أن الأحداث السيني يساوي int وتعني integer أي عدد صحيح

سيكون عشوائياً مضروب في 550 أي من صفر إلى 549

وكذلك بالنسبة للأحداث الصادي من صفر إلى 399

لو فرضنا أننا نريد من واحد إلى 549 في الأحداث السيني سيكون بالشكل التالي

_x = int(Math.random()*550+1);


علمً أن الوظيفة الرياضية

Math.floor(Math.random()*550);

تقوم بنفس الذي تقوم به الوظيفة int()

لأنه الوظيفة Math.floor تحول الرقم الطبيعي إلى عدد صحيح أو اصغر منه



شاهد هذا المثال

width = 550 height = 400


onClipEvent(load) {
dx = Math.random()*10-5;
dy = Math.random()*10-5;
}

onClipEvent(enterFrame) {
الشرح تعني math.random()*10-5 انه سيجعل الفلم يبدأ من الرقم –5 إلى الرقم 5




_x += dx;
_y += dy;

if (Math.random() > .9) {
dx = Math.random()*10-5;
dy = Math.random()*10-5;
}
}


أما أداة الشرط ستكون حينما يكون الرقم العشوائي هو اكبر من 9 بعد الفاصلة سيتحول الفلم إلى طور

جديد من العشوائية



الرؤية الواضحة تقول أستخدم الأمر trace() لمعرفة ماذا يدور في صميم هذا المشروع

سترى أن الفلم يتحرك في اتجاه حتى إذا ما كان اصغر من عشرة بعد الفاصلة وليست العشرة الصحيحة

فإذا جاء الرقم اكبر سيتحول

إلى جهة أخرى هذا والله أعلى وأعلم السلام عليكم

البرنس_زاهر
27 Feb 2002, 10:32 PM
مشكور اخوي الشهاب الحارق
والله لا يحرمنا من دروسك الحلوه
.................................................. :D

الشهاب الحارق
28 Feb 2002, 02:21 AM
السلام عليكم

لا شكر على واجب يا غالي