ارسالی عباس
Number
امکاناتی که MMB برای اعداد تعبیه کرده محدود است (مثلا جذر نمی گیرد ، حتی اگر به توان نیم برسونیم ، عدد خروجی همیشه 1 خواهد بود ) . در اولین قسمت آموزشی MMB که مربوط به ساخت ماشین حساب بود استفاده از 4 عمل اصلی و توان را یاد گرفتیم . حالا بریم سراغ قدر مطلق، عدد اتفاقی و جزء صحیح اعداد .
ABS(number)
این کد قدر مطلق یک عدد را نشان می دهد (عدد -321):
A=ABS(-321)
Message(“”,”A”)
INT(number)
این کد جزء صحیح یک عدد را نشان می دهد . مثلا اگر عدد ورودی 14.51 باشد عدد خروجی 14 خواهد بود .
A=INT(14.51)
Message(“”,”A”)
RND(maxvalue)
در داخل پرانتز یک عدد بنویسید .این عدد حداکثر عددی است که به عنوان عدد اتفاقی به شما داده می شود . مثلا اگر بنویسید 5 عدد اتفاقی عددی صحیح بین0 تا 5 خواهد بود .
A=RND(2)
Message(“”,”A”)
Publication Constants
این قسمت هم تقریبا مثل قسمت قبلی است .بخشی از قسمت قبلی درباره system Constants و این بخش از این قسمت در باره Publication Constants است .
طول و عرض پنجره ، طول و عرض محیط مفید پنجره ، فاصله پنجره تا بالا و سمت چپ Desktop (X,Y)، فاصله یک Object تا بالا و سمت چپ پنجره (همان پنجره که با MMB درست کرده اید) . طول و عرض یک Object . فعال یا غیر فعال بودن یک Object و… از انواع Publication Constants است.
PubWidth()
طول پنجره را نشان می دهد. البته با قاب دور پنجره .
Message(“Project window width + border is: “,”PubWidth()”)
PubHeight()
عرض پنجره به اضافه قاب دور پنجره و قسمت عنوان را نشان می دهد.
Message(“Project window Height + border is: “,”PubHeight()”)
ClientWidth()
طول محیط کار پنجره را نشان می دهد . بدون قاب دور آن .
Message(“Workarea width is: “,”ClientWidth()”)
Client Height()
طول محیط کار پنجره را نشان می دهد .
Message(“Workarea Height is : “,”ClientHeight()”)
از اینجا به بعد کد های نمونه رو نمی نویسم ، چون می دونید چه جوری کد ها رو بنویسید .
PubX()
فاصله پنجره تا سمت چپ Desktop را نشان می دهد . (مختص X)
PubY()
فاصله پنجره تا بالای Desktop را نشان می دهد . (مختص Y)
ObjectX()
فاصله یک Object تا سمت چپ پنجره را نشان می دهد . در داخل پرانتز باید Label شي مورد نظرتان را بنویسید .
ObjectY()
فاصله يک Object تا بالای پنجره را نشان می دهد . در داخل پرانتز باید Label شي مورد نظرتان را بنویسید .
ObjectWidth()
طول یک Object را بر می گرداند . در داخل پرانتز باید Label شي مورد نظرتان را بنویسید .
ObjectHeight ()
عرض یک Object را بر می گرداند .
IsVisible()
اول label شی مورد نظرتان را در داخل پرانتز ها تایپ کنید . یرای مقدار خروجی آن 3 حالت پیش می آید : اعداد 1 ، 0 و -1
-1 یعنی : Object ی با این نام وجود ندارد .
0 یعنی : وجود دارد امَا ……….. مخفی است!
1 یعنی : وجود دارد مخفی هم نیست !
For …
خب با یک مثال می خواهم طرز کار حلقه For را نشان دهم . (حلقه For یک عمل را چند بار انجام می دهد) . MMB در بین حلقه ها فقط For و در بین دستور ها If را دارد .
این مثال 5 بار پیامی را ظاهر می کند که در آخر آن پیام عددی وجود دارد که به ترتیب از 1 تا 5 را نشان می دهد .
For 1 To 5
i=i+1
Message(“Number “,”i”)
Next
دیگه نیازی به توضیح نیست .پیام ها به ترتیب با این عنوان ها می آیند .
Number i: 1
Number i: 2
Number i: 3
Number i: 4
5Number i:
با این حلقه یک عدد را (در یک TextBox) وارد می کنیم به عنوان تعداد خط ها . سپس کلید مورد نظر را می زنیم و در خروجی که یک Text است نشان می دهد که N تا خط (عدد درون TextBox) حداکثر صفحه را به چند قسمت تقسیم می کند . توی جدول نوشته ام رابطه اش رو خودتون پیدا کنید .
یک کلید (Text button) هم درست می کنیم که این عملیات را اجرا کند . (قسمت Output دکمه را در حالت Ineger قرار دهید . چون عدد صحیح است و در دو کادر مقابل آن به ترتیب A$ و A بنویسید ).
قسمت ها | تعداد خط ها |
1 | 0 |
2 | 1 |
4 | 2 |
7 | 3 |
11 | 4 |
16 | 5 |
22 | 6 |
29 | 7 |
37 | 8 |
دستور مربوط به کلید :
i=0
p=1
For 1 To A
i=i+1
p=p+i
Next
DisplayValue(“Answer”,”p”)
در قسمت Label متن خروجی (همون text) نام Answer را تایپ کردم .
حالا شما می توانید دستور هایی ترکیبی با IF و For یا If در If و… بنویسید .
به عنوان تمرین چند تا سوال می نویسم .که میتوانید به آنها را با دستور If ، For و یا هردو جواب دهید.
سوال 1 . همین تمرین بالا را طوری بنویسید که اگه عدد ورودی از 0 کمتر بود پیامی با این مضمون که “عدد را اشتباه وارد کرده اید ، دوباره تلاش کنید” ظاهر شود .
سوال 2 . ساعتی بسازید که ساعت ، دقیقه و ثانیه را وارد می کنیم و در همان زمانی که ما مشخص کردیم یک موسیقی پخش کند . (برای پخش موسیقی از این Action script استفاده کنید : AudioOpen(“”) ) .
سوال 3 . یک کلید بسازید که نام آن Play است . با کلیک کردن روی آن یک موسیقی پخش می شود و همچنین نام آن به Stop تغییر می کند که با کلیک کردن دو باره موسیقی قطع می شود . (برای قطع شدن موسیقی از این Action script استفاده کنید : AudioStop(“”) ) .
سوال 4 . برنامه ای بسازید که مینیمم وماکزیمم بین دو عدد را به دست آورد و در دو خروجی مجزا (Text) نمایش دهد .
سوال 5 . برنامه ای بسازید که با وارد کردن 3 عدد به عنوان 3 ضلع مثلث بگوید که این مثلث قائم الزاویه هست با نه ؟ (با استفاده از قضیه فیثاغورس)
سوال 6 . یک برنامه که پنجره فرمت ویندوز را 3 بار در ثانیه نشان دهد .