صفحه 1 از 9 123 ... آخرین
نمایش نتایج: از شماره 1 تا 10 از مجموع 84

موضوع: فیلم آموزش کامل زبان برنامه نویسی Lua و Autoplay Media Studio + آموزش های تکمیلی

  1. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #1

    پیش فرض فیلم آموزش کامل زبان برنامه نویسی Lua و Autoplay Media Studio + آموزش های تکمیلی

    به نام خدا

    سلام



    مجموعه آموزش نرم افزار 8 Autoplay Media Studio (در 2 دوره)


    تعداد فیلم های آموزشی : 83 قسمت (دوره اول 24 و دوره دوم 59 قسمت)

    حجم کلیه فیلم های آموزشی : دوره اول حدودا 6 گیگابایت و دوره ی دوم حدودا 8.6 گیگابایت

    سال تهیه : 1392 (دوره اول) و 1395 (دوره دوم)

    منبع آموزش ها : کتاب آموزش نرم افزار 8 Autoplay Media Studio از آقای حامد حیــدری و جواد احشامیان (دوره اول) و سایت lua.org و بقیه ی منابع (دوره دوم)

    لینک دانلود (دوره دوم) :



    لینک متنی (دوره دوم) :



    دانلود کتاب آموزش Autoplay Media Studio 8 به همراه توضیحات اضافه

    توضیحات قسمت ها (دوره اول) :



    توضیح قسمت ها (دوره دوم) :




    تمامی آموزش های این مجموعه با زبانی عامیانه و زیبا تهیه شده است که باعث میشود لحظات شاد و مفرحی را در کنار این آموزش های سپری نمائید .
    اگر تاکنون با نرم افزار 8 Autoplay Media Studio کار کرده باشید با قابلیت های فراوان این نرم افزار در زمینه ساخت آتوران آشنا هستید . اگر هم تاکنون با این نرم افزار کار نکرده اید این فیلم های آموزشی تا حد بسیار زیادی شما را با نحوه اسکریپت نویسی و ساخت نرم افزار و تهیه آتوران های سفارشی آشنا خواهد نمود .


    نکات (دوره اول آموزش) :
    1) فقط قسمت اول رو باید باید با نرم افزار Sj Split باید ادغام کنین
    2) سری اول آموزش ها داخل سرورهای قدیمی پرشین گیگ هست و این سرور خیلی از اوقات مشکل دارن . بنابراین اگه در دسترس نبودن ، چاره اش فقط منتظر موندن هه
    3) در سری اول ، فرمت تبدیل AVI و کدک تبدیل Xdive هست
    4) در سری اول ، بیشتر از 35 ساعت (2115 دقیقه) فیلم آموزش شد


    نکات (دوره دوم آموزش) :
    1) این سری جدید از فیلم های آموزشی ، با rar5 فشرده سازی شدند یعنی برای اکسترکت کردن ، باید نرم افزار Rar اون هم حتما نسخه ی 5 اش رو داشته باشین (با نسخه 4 اکسترکت نمیشه)
    2) سری آموزش های دوم ، داخل گوگل داریو هست و پیشنهاد میشه موقع دانلود از گوگل درایو ، از دانلود IDM استفاده نکنین و بجاش از دانلودر مرورگرتون استفاده کنین . اگه موقع دانلود مشکل داشت ، حتما مرورگرتون رو عوض کنین و دانلود کنین (پیشنهاد من دانلود با مرورگر اپرا هست)
    3) همه ی فایل ها قابلیت recovery record دارن (حتی دوره ی اول)
    4) به دلایلی ، چند قسمت اول از آموزش های سری دوم (یعنی از قسمت 25) ، توی فیلم اشتباه نام گذاری شد اما شماره گذاری فایل ها و پوشه های آموزشی ای که دانلود میکنید ، درست هست (بعدها داخل فیلم آموزشی اصلاح کردم وقتی که شماره ی قسمت های فیلم های آموزشی رو میگفتم) . یعنی به اشتباه ، قسمت 25 ، قسمت 29 (و همین ترتیب برای بقیه ی قسمت ها) گفته شد
    5) آخرین تجربه ، در فیلم آموزشی سری دوم بود بنابراین اگه تناقضی در متن آموزش و فیلم آموزش بود ، اون چیزی که در فیلم آموزش (سری دوم) گفته شد معتبرتر هست
    6) در سری دوم ، فرمت تبدیل MP4 و کدک تبدیل H264 هست
    7) در سری دوم ، بیشتر از 126 ساعت (7615 دقیقه) فیلم آموزش شد که با 35 ساعت قسمت اول ، بیشتر از 161 ساعت فیلم آموزش شد

    ** برای شادی روح اموات خودتون و هر کسی که در این آموزش تلاش کردن و سهیم ان ، ممنون میشم یه فاتحه بخونین


    ادامه ی آموزش های سری دوم

    حجم : 1.7 GB
    زمان کل : 25 ساعت
    تعداد قسمت ها : 9
    حجم کل دوره آموزش اتوپلی (از سایت p30download) : حدودا 11.7GB
    زمان کل دوره آموزش اتوپلی : بیشتر از 186 ساعت
    تعداد کل قسمت های دوره آموزش اتوپلی : 83 قسمت










    توضیحات قسمت ها




    نکات :
    * هر نکته ای که در پست اول و در قسمت "نکات (دوره دوم آموزش)" گفته شد ، برای این 9 قسمت هم صدق میکنه

    * با تشکر ویژه از استاد علی که در ارتباط برقرار کردن بین لوا و سی شارپ کمک بسیار ویژه ای کردن

    ** برای شادی روح اموات خودتون و هر کسی که در این آموزش تلاش کردن و سهیم بودند ، ممنون میشم یه فاتحه بخونین **
    ویرایش توسط SajjadKhati : 14-07-2017 در ساعت 20:50 دلیل: ترکیب پستها به درخواست کاربر استارتر
    نمایش امضاء

  2. نمایش تشکر

  3. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #2

    پیش فرض

    این دیگه آموزش نیست . فقط کد خالیه
    عنوانش ملومه دیگه . ینی وقتی موس رو روی پروژه کلیک کردین و همینطور که فشار داده هه ، به سمت چپ یا راست میبرین ، پروژه هم به صفحه ی قبلی (وقتی موس رو به سمت چپ ببرین) یا صفحه ی بعدی (وقتی موس رو به سمت راست ببرین) میره (شبیه عملکرد صفحات لمسی و آندروید و... حالا این بار با موس توی پروژه تون . البته اگه صفحه لمسی هم داشته باشین که ما تو عمرمون ندیدیم هم میشه) :

    برین تو رویداد on mouse button و اینا رو کپی کنین :


    کد:
    if e_Type==0 then
    MousePos = "LeftButtonPressed"
    MouseMove = "Once"
    else
    MousePos = "LeftButtonNotPressed"
    MouseMove = "Not Once"
    end
    بد برین تو رویداد کناریش ینی on mouse move و ایناها رو کپی کنین :


    کد:
    if MousePos == "LeftButtonPressed" then
        if MouseMove == "Once" then
        PosNextPage = e_X+100
        PosPrevPage = e_X-100
        MouseMove = "Not Once"
        end
        
        if e_X>=PosNextPage then
        MousePos = "LeftButtonNotPressed"
        Page.Navigate(PAGE_NEXT);
        end
        
        if e_X<=PosPrevPage then
        MousePos = "LeftButtonNotPressed"
        Page.Navigate(PAGE_PREVIOUS);
        end
    end


    یه چن تا نکته فقط بگم:

    1) تو اینجا و تو این کد ، اگه تو پروژه کلیک کنین (و ول نکنین و همینجوری داشته باشین) و موس را 100 پیکسل به طرف راست ببرین ، پروژه میره به صفحه ی بعدش و اگه 100 پیکسل از همونجایی (که اول کلیک کرده بودین) ، موس رو به سمت چپ بکشین ، پروژه میره به صفحه ی قبل اش (حواستون باشه نباید کلیک موس رو ول کنین وقتی که چپ و راست میبرینش)

    2) این کد و طرح فقط تو پروژه هایی کار میکنه که تو تنظیمات پروژه (منوی project>setting) تو قسمت style اش ، نوع پنجره بصورت standard انتخاب شده باشه . ینی تو حالت flat کار نمیکنه.
    اگه میخاین تو حالت flat (که تو تنظیماتش گفتم هست) کار کنه ، باید بازم تو همین تنظیمات ، قابلیت جابجایی پروژه را مخفی کنین ینی تیک Movable رو بردارین

    3) ملومه بازم دیگه . این کد رو باید تو رویداد on mouse button و on mouse move همه ی صفحات بزارین تا همه ی صفحات کار کنن
    نمایش امضاء

  4. نمایش تشکر

  5. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #3

    پیش فرض

    از این به بد ، آموزش هایی که تو فیلم بهش کمتر توجه شد یا گفته نشد ، گفته میشه
    اغلب شو متوجه نمیشین مگر اینکه اول فیلمو ببینین و تمرین کنین
    ویرایش توسط SajjadKhati : 17-09-2014 در ساعت 07:54
    نمایش امضاء

  6. نمایش تشکر

  7. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #4

    پیش فرض

    آموزش نصب اتوماتیک فایل های msi :

    یه چند تا پست آموزشی و پروژه هست که تو فیلم ها گفته نشد ، واسه همین گفتم بگم دیگه

    این پست واسه قرار دادن و آموزش نصب اتوماتیک فایل ها (بدون اومدن پنجره ی واسه زدن دکمه های Next و ...) از طریق فایل های MSI :

    چیزی نیس که ، یه خطه همش . خوندن نداره که


    کد:
    InstallMsi = MSI.InstallProduct("AutoPlay\\Docs\\Gmail Notifier Pro 4.5.1.msi", "ACTION=INSTALL");

    خوب دیگه ملومه از اسمش دیگه . باید نوع و پسوند فایل تون MSI (نه exe ها) باشه که تک و توک فایل های نصبی مثل نرم افزارهای Google Drive و ... با این پسوند ان (حیف .شانسو میبینی؟ اگه هموشون با این پسوند میشدن ، چی میشد )
    دومین نکته این که تو ورودی اول کد بالا ینی "AutoPlay\\Docs\\Gmail Notifier Pro 4.5.1.msi" باید مسیر فایل MSI ای که میخاین نصب کنین رو بدین (هر پوشه ای که میرین باید دو تا علامت \\ بزارین (یکی نمیشه ها) باز نگین نگفتی )
    سومین نکته هم اینه که همونطور تو راهنمای این دستور ملومه ، اگه میخاین فایل رو حذف کنین (ینی قبلا اگه نصب شده بود) ، باید تو ورودی دوم این کد ، رشته ی "REMOVE=ALL" رو وارد کنین (مثل همینی که نوشتم باید داخل دابل کوتیشن باشه ها ینی نوشته هه باید داخل علامت " " باشه چون از نوع رشته هه) که اینش به درد ما زیاد نمیخوره (حذف کی میکنه آخه ) و اگه میخاین فایل msi رو نصب کنین تو ورودی دوم ، مثل کد بالا باید بنویسین "ACTION=INSTALL" و اگه میخاین بصورت administrator نصب کنین باید "ACTION=ADMIN" رو وارد کنین

    اگه نصب با موفقیت انجام شه ، متغییر اش (که تو اینجا طرف چپ مساوی ینی InstallMsi میشه) برابر true میشه ینی true رو برمیگردونه و اگه نصب نشه یا مشکلی پیش بیاد ، false رو برمیگردونه یا همون ذخیره میکنه که تو راهنماش نوشته هه. مثلا اگه میخاین وقتی با موفقیت نصب شد پیام بده ، چون اگه با موفقیت نصب بشه ، متغییرش (InstallMsi) برابر با true میشه پس میگین اگه برابر با true شد ، یه پیام بده ینی اگه میخاین پیام بده ، در ادامه ی کد بالا ، اینو بنویسین :


    کد:
    if InstallMsi==true then
    Dialog.Message("Notice", "your program installed successfully", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
    end


    موفق و پیروز و سربلند باشین
    نمایش امضاء

  8. نمایش تشکر

  9. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #5

    پیش فرض

    برای نام گزاری متغییرها ، هیچ وقت از تیکه ای از اسم توابع استفاده نکنین.

    مثلا تو کد Page.StartTimer ، اگه تو خط های قبل اش یا تو رویداد های دیگه (بسته به رویداد داره که اجرا شده باشه کداش یا نه) ، متغییری بنام Page تریف کنین که دقیقا هم نام یه تیکه ی اول از کدمون که Page.StartTimer بود بدیم و فرضا اگه این متغییر Page رو برابر یه عدد یا رشته که مثلا اینجا میخام بگیرم برابر رشته ی علی ینی ali"=Page بگیرم و تو خط بدش کد Page.StartTimer رو بزارم ، همونطور که میدونین هر جا اسم Page بیاد ، بجاش مقدارش که تو اینجا ali بود رو میزاره و چون اون کد هست و اگه کوچیکترین دستگاری ای بشه ، قات میزنه پس ارور میده . ینی تو اینجا اگه اینجوری بنویسیم کد رو :

    کد:
    Page = "ali"
    Page.StartTimer(1000, 10);

    کدمون اینجوری جایگزین میشه و بجای تیکه ی اولش که Page بود ، مقدار متغییر مون که ali بود جایگزین میشه :

    کد:
    ali.StartTimer(1000, 10);



    . چون کد ali.StartTimer واسه نرم افزار نامفهومه پس موقه اجرا ، ارور میده

    یادتون باشه من گفتم اگه دقیق مثل اون یه تیکه ی کدها (حالا قسمت چپ کد که Page بود یا راستش که StartTimer بود) اما همونطور که میدونین که این نرم افزار برای تریف متغییر ، به حروف بزرگ و کوچیک حساسه پس اگه اون متغییر Page رو بصورت page اسم گزاری کنین ، ارور نمیده چون این دو تا رو به عنوان دو تا متغییر جداگانه میشناسه نرم افزار
    ویرایش توسط SajjadKhati : 18-09-2014 در ساعت 08:18
    نمایش امضاء

  10. نمایش تشکر

  11. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #6

    پیش فرض

    اینم انواع پروژه های مختلف که از انجمن خدا بیامرزی وسوسه گرفتم و مهم تریناشو براتون پیوست کردم تو زیر

    این پروژه و پلاگین های همراشو میتونین از اینجا دانلود کنین

    پروژه ها ایناهان :

    1) امتحان یا همون کوییز تستی
    2) کپی فایل با روند پیشرفت اش
    3) لودینگ خالی
    4) خوندن همراه با متن آیه های قران
    5) ضبط صدا خودتون
    6) ساخت یوزر و پسورد
    7) تغییر پشت زمینه ی صفحه دسکتاپ کامپیوتر خودتون
    8) ماشین حساب
    9) دفترچه تلفن
    10) تغییر صدا و ولوم
    11)
    utility for AMS 2.6

    به همراه یک سوپرایز

    نرم افزار یا بهتر بگم پلاگین پرکاربرد utility for AMS 2.6 که اغلب کمبود ها و پلاگین ها و کدهای مکمل رو تو خودش داره مثل انواع پلاگین ها برای transition و تعویض انیمیشنی صفه و ... و چن تا پلاگین واسه اضافه شدن کدها و ...

    به اضافه ی یه پلاگین واسه نرم افزار به اسم Progress.EX همراشه که میتونه اتوران رو هم مثل ویندوز مثلا موقع پخش آهنگ ، پروگرس و روند پیشرفت آهنگ رو تو taskbar برای پروژه ی اتوران نشون بده

    هر چند اگه فیلمو نگا کنین ، بیشتر اینا رو خودتون میتونین درس کنین و یاد میگیرین یا حداقل الگوریتم ساختن بیشتر شونو یاد میگیرین و میتونین خودتون بسازین
    هر چند من پیشنهاد و تاکیدم بازم روی آموزشه و اینکه خودتون یاد بگیرین
    نمایش امضاء

  12. نمایش تشکر

  13. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #7

    پیش فرض

    Registery :

    برای قسمت registery ، هر جا کلمه ی key رو دیدی ، منظورش پوشه های سمت چپ تو رجیستری هه و هر جا کلمه ی value Name رو دیدی منظورش همون اسم value یا همون اولین ردیف تو ستون سمت چپ هست بنام Name هه و هر جا کلمه ی value خالی یا data رو دیدی ، منظورش مقدار value که همون آخرین ردیف تو ستون سمت راست بنام data هه ، هست
    تذکر : نوع value اگه از نوع REG_SZ باشه ، به عنوان رشته ذخیره میکنه و اگه از نوع REG_DWORD باشه از نوع عدد اما موقع خوندن و برگردوندن ، همه رو از نوع رشته میخونه و برمیگردونه
    نمایش امضاء

  14. نمایش تشکر

  15. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #8

    پیش فرض

    قضیه ی return (کلمه ی کلیدی return) :


    return معمولا تو تابع استفاده میشه و اگه برابر یه مقدار شد ، اگه تابع فراخونی بشه ، اون مقداری که تو return دادیم رو برمیگردونه . مثلا :

    کد:
    n=0
    function num(n)
    if n==0 then
    return 1
    end
     
    Dialog.Message("Notice", num(n), MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);

    در اینجا تو خروجی ، num(n) همون مقدار return ای هست که برابر 1 بود ینی تو خروجی نوشته میشه 1

    مثلا فاکتوریل رو میخایم با این روش حساب کنیم :


    کد:
    n = Input.GetText("Input1");
    n = String.ToNumber(n);
    
    
    function factorial(n)
    if n == 0 then
    return 1
    else
    return n * factorial(n - 1)
    end
    end
    Dialog.Message("Notice", factorial(n), MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);

    تو این دستور از ورودی اینپوت مقداری که وارد شدش رو میگیره و اگه برابر 0 بود (تو ورودی اینپوت عدد 0 نوشته شده بود ) ، تو خروجی factorial(n) ، 1 میشه ینی مینویسه تو خروجی 1
    و اگه هر عدد دیگه ای بود ، مثلا اگه بود 3 ، خود اون عدد ضربدر factorial یکی از خودش کمتر حساب میشه ینی اینجوری میشه :
    3*factorial(2)
    چون تابع factorial دوباره فراخونی شد پس دوباره این تابع اجرا میشه اما این بار با پارامتر یکی کمتر از خودش ینی n=2 ینی در واقع خودش از داخل خودش ، فراخونی میکنه و صدا میزنه تابع خودش رو ینی در واقع همون کار تابع بازگشتی رو میکنه
    باز چون n=2 هه ، باز هم این قسمت else اجرامیشه ینی
    n * factorial(n -1)

    این بار که n=2 هه پس میشه :
    3*factorial(2)
    خود factorial(2) که مقدار باز گشتی بود دوباره فراخونی میشه و میشه :
    2* factorial(1)
    ینی در واقع تا حالا شد :
    3*(2* factorial(1))
    دوباره تابع factorial(1) که اینبار مقدار n برابر 1 هه اجرا میشه و همه ی قبلی ها مثل بالا ضرب میشن در factorial(1) :
    factorial(3*(2*(1)))
    در اینجا ، تا factorial(1) محاسبه میشه که میشه : factorial(0)*1 و چون factorial(0) مخالف شرط اول تابع هه ، پس فقط تا 1 ضرب میشه و factorial(0) که میشد factorial(-1)*-1 اجرا نمیشه
    پس :
    3*2*1=6
    پس فاکتوریل 3 که میشه 6 بدست اومد
    نمایش امضاء

  16. نمایش تشکر

  17. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #9

    پیش فرض

    دستور حلقه ی تکرار while :

    اگه ما مثلا بنویسیم :


    کد:
    i=1
    while i==5 do
    Dialog.Message("Notice", "Your message here.", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
    End
    خوب این ملومه که چون i برابر 5 نیست پس دستور شرط اجرا نمیشه (مثلا اگه تو خط دوم میزاشتیم i==1 چون قبلش تو خط اول برابر 1 بود پس شرط دستور اجرا میشد)
    اما وقتی بجای خط بالا بنویسیم :

    کد:
    i=1
    while i do
    Dialog.Message("Notice", "Your message here.", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
    end

    این بار چون تو خط دوم ، شرط و مقدارخاصی برای متغییر i تعریف نکردیم (ینی نگفتیم که هر وقت i برابر فلان مقدار بود ، شرط رو اجرا کن) ، پس اگه i برابر هر مقداری بود ، اون شرط حلقه ی while اجرا میشه . فقط کافیه که متغییر i قبل حلقه ، تعریف شده باشه (با هر مقداری)
    نمایش امضاء

  18. نمایش تشکر

  19. عضو متخصص SajjadKhati آواتار ها
    نمایش اطلاعات
    #10

    پیش فرض

    فرا آرایه (MetaTable) :

    همون آرایه ی معمولی خودمونه اما میشه عنصرها یا همون عضوهاش رو برابر یه متغییر گرفت یا حتی برابر یه متغییر نگرفت . مثلا آرایه ی معمولی که این جوریه :

    کد:
    Array={10,7,3,"ali"}
    فرا آرایه ای که متغییر داره ، این جوری میشه :

    کد:
    Array={x=10,y=7,z=3,w="ali"}
    یا فرا آرایه ای که متغییر نداره ، این جوری میشه :

    کد:
    Array = {{10,7,3},"Ali"}
    که به این نوع آخر ، آرایه ی چند بعدی هم میگن که یکی از پرکاربردترین و مهم ترین و کارآسون کننده ترین هاست درباره ی این نوع آرایه یا بهتره بگم فراآرایه ی چند بعدی ، تو صفه ی 3 بحث میکنیم (حتما اگه طالب فراآرایه این ، اون مبحث را پی گیری کنین که خیلی مهمه)

    ینی خود عضوهاش رو میشه تو یه متغییر دیگه ریخت و نام گزاری کرد متغییر هاش رو اما تو آرایه ی معمولی ، فقط میشه مقدار داد (نه اینکه متغییر همراش نام برد)
    مهم ترین ویژگی فرا آرایه اینه که چون حالت چند بعدی (هر تعداد مثل 3 یا 4 بعدی و ...) هستن ، میشه کار چندین آرایه رو تو یه آرایه انجام داد . منظور از چند بعدی اینه که چندین اندیس (عدد داخل پرانتز آرایه ها) که همون نوعی متغییر هستن میشه براش تعریف کرد پس بجا اینکه چندین آرایه تعریف کرد ، میشه همه ی اون آرایه ها رو (هر چند تا میخان باشن) فقط تو یه فرا آرایه ی چند بعدی خلاصه کرد که کار رو فوق العاده آسون و سریعتر میکنه و علاوه بر اون ویژگی دیگه شم اینه که میشه دو تا فرا آرایه ی مختلف و حتی عضوهای مختلف یه فرا آرایه رو میتونیم روش عملیات ریاضی (جمع و کم و ...) و ... انجام بدیم.
    تو فرا آرایه ، حتی میشه بجای یه عضو ، یه آرایه ی دیگه نام گذاری تعریف کرد. (خود اون آرایه هم باز میتونه یه آرایه ی معمولی ( بدون متغییر داخلی ) باشه یا یه فرا آرایه باشه که متغییر داشته باشه)
    مثلا اگه آرایه ی معمولی (بدون متغییر) باشه :

    کد:
    a={v={ 7, 1, 30},y=20,z=30}

    یا مثلا اگه خودش دارای یه فرا آرایه باشه :


    کد:
    a={v={x=7,y=1,z=30},y=20,z=30}

    این جوری ای که گفتم ، دقیق باید همین جوری نام گذاری کرد . ینی مثل حالت عادی باید تعریف کرد دیگه. ینی وقتی حتی میخایم داخل خود یه فرا آرایه ،آرایه یا فرا آرایه ی دیگه ای رو تعریف کنیم ، مثل حالت عادی ای که تعریف میکنیم ، اون آرایه یا فرا آرایه ی داخلی رو هم باید بهش یه نام بدیم . (که در بالا برابر v گرفتیم)

    حالا در اینجا فقط اولین عضو فرا آرایه ی a رو براش آرایه و فرا آرایه ی دیگه ای تعریف کردیم . میتونیم عضوهای دیگه رو هم این جوری کنیم

    حالا فراخونی فرا آرایه که مهمترین قسمته :

    همونطور که میدونیم برای فراخونی عضوهای یه آرایه ، تو لوا ، 2 روش هست . اگه آرایه فقط مقدار داشت (آرایه معمولی بود) ، عضوها رو با اندیس شماره فراخونی میکنیم که در این صورت برای فراخونی عضو خاصی از آرایه ، اول اسم آرایه ی اصلی رو نام میبریم و بعد دو تا کلوشه باز و بسته میکنیم و اندیسی که بصورت شماره هست رو ، شماره شو تو کلوشه میزاریم ولی اگه اون عضوهای اون آرایه ، خودش متغییر داشت (مثل همین فرا آرایه) ، عضوها رو با اندیس اسم متغییر اش فراخونی میکنیم که در این صورت برای فراخونی عضو خاصی از آرایه ، اول اسم آرایه ی اصلی رو نام میبریم و بعد یه نقطه میزاریم و بعد اسم متغییر اون عضو خاص رو مینویسیم

    مثلا دو تا فرا آرایه داریم که فرا آرایه ی اول اسمش a هست و فرا آرایه ی دوم اسمش b :


    کد:
    a={x=10,y=20,z=30}
    b={x=2,y=7,z=5}
    خوب حالا مثلا میخایم بگیم که x امین عضو از فرا آرایه ی a که 10 هست رو با x امین عضو از فرا آرایه ی b که 2 هست رو جمع کن ، این جوری فراخونی میکنیم که چون خود عضو های آرایه ، متغییر دارن ، پس باید اسم متغییر هاشون رو برد ینی فراخونی آرایه با روش دوم که تو بالا گفتم پس a.x ینی x امین عضو از فرا آرایه ی a که 10 بود و b.x هم همون x امین عضو از فرا آرایه ی b رو که 2 بود برمیگردونه پس مینویسم :

    c=a.x+b.x

    ینی 10+2 که میشه 12 رو تو متغییر c ذخیره میکنه و تو کد پایین نمایش میده

    کد:
    Dialog.Message("Notice", c, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);

    ما میتونیم هر عضو از یه فرا آرایه رو با هر عضوی که دلمون خاست ، عملیات ریاضی انجام بدیم تو مثال بالا مثلا :

    C=a.z+b.x

    که z امین عضو از آرایه ی a رو که 30 بود با x امین عضو از آرایه ی b که 2 بود رو جمع میکنه که میشه 32 و تو متغییر c ذخیره میکنه
    و حتی فقط عضوهای یه آرایه رو عملیات ریاضی انجام بدیم که خوب ملوم بود و لازم به گفتن نبود.

    همینطور میتونیم عضوهای یه فرا آرایه رو با عضوهای یه آرایه ی معمولی با هم ، عملیات ریاضی انجام بدیم مثلا :


    کد:
    a={x=10,y=20,z=30}
    b={ 2, 7, 5}

    a که یه فرا آرایه هست و b هم یه آرایه ی معمولی . طرز فراخونی هر دو تا شونو تو همون اول گفتم . اونی که متغییر نداره ، ینی عضوهای آرایه ی معمولی رو با شماره (ای که داخل کلوشه هه) فراخونی میکنیم و عضوهای فرا آرایه رو چون متغییر داره ، با اسم متغییرش (با نقطه قبل اش) فراخونی میکنیم پس اگه میخایم بگیم اولین عضو فرا آرایه ی a رو که 10 هست میشه a.x و اگه میخایم بگیم اولین عضو آرایه ی b که 2 هست میشه b[1] ینی :

    کد:
    c=a.x+b[1]

    که همون 10 رو با 2 جمع میکنه و 12 رو تو c ذخیره میکنه و .. :


    کد:
    Dialog.Message("Notice", c, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);

    همین طور که همون اول گفتم ، میتونیم داخل یه فرا آرایه ، یه فرا آرایه ی دیگه ای رو به عنوان عضواش تعریف کنیم و با یکی دیگه عملیات ریاضی انجام بدیم مثلا :


    کد:
    a={x={x=7,y=1,z=30},y=20,z=30}
    b={x=2,y=7,z=5}

    در اینجا ما میخایم بگیم اولین عضو از فرا آرایه ی a که خودش هم یه فرا آرایه ای هه بنام x بگیم که اولین عضو از این فرا آرایه ی x رو که متغییری هست بنام x که مقدارش 7 هست رو با اولین عضو از فرا آرایه ی b که متغییر اش x با مقدار 2 هست رو جمع کنه.
    همیشه مقدار بعد از آخرین نقطه تو فراخونی ، اندیس یا همون عضو آرایه هست و قبل از اون آخرین نقطه همه شون میشن اسم آرایه پس ینی فقط کافیه برای فراخونی اولین عضو فرا آرایه x که خودش تو فرا آرایه ی a هست ، کلا به ترتیب اسم هر آرایه و هر متغییری رو که میخای ، بزاری و بین شون نقطه بزاری ینی :
    a.x.x
    ینی همون مقدار 7 که اولین عضو فرا آرایه ی x هه. ینی x امین عضو از فرا آرایه ی x که خودش تو فرا آرایه ی a هه
    یا مثلا a.x.y ینی y امین عضو از فرا آرایه ی x که تو فرا آرایه ی a هه که تو مقدار بالا میشه همون 1
    خوب حالا بریم سر اصل مطلب که میخاستیم اون 7 رو با 2 که گفته شد جمع کنیم .2 هم که منظورمون همون اولین عضو فرا آرایه ی b بود میشه b.x
    پس میشه :




    کد:
    c = a.x.x + b.x
    Dialog.Message("Notice", c, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1
    یادتون نره که تو صفه ی 2 پست 12 ، فراآرایه ی چند بعدی رو هم دنبال کنین چون مبحث کاربردی ایه
    نمایش امضاء

  20. نمایش تشکر

صفحه 1 از 9 123 ... آخرین

اطلاعات تاپیک

Users Browsing this Thread

در حال حاضر 1 در حال مشاهده این موضوع می باشد.. (0 کاربر و 1 مهمان در این انجمن حضور دارند)

موضوعات مشابه

  1. مباحث نرم افزار AutoPlay Media Studio
    توسط ali68124 در انجمن Autorun و ابزارهای مربوطه
    پاسخ ها: 119
    آخرين ارسال: 10-12-2018, 10:00
  2. بازیابی پروژه های ساخته شده با برنامه AutoPlay.Media.Studio.v8.1
    توسط abbas-t در انجمن بازیابی اطلاعات (Recovery)
    پاسخ ها: 21
    آخرين ارسال: 09-01-2017, 19:25
  3. مشکل با جستجو در autoplay media studio
    توسط mrsaeed در انجمن نرم افزارهای گوناگون (متفرقه)
    پاسخ ها: 2
    آخرين ارسال: 06-03-2016, 21:57
  4. پاسخ ها: 11
    آخرين ارسال: 09-12-2014, 11:08
  5. مشکل نصب درایور صدای C-Media در ویندوز 7
    توسط Steel در انجمن ویندوز 7
    پاسخ ها: 1
    آخرين ارسال: 27-06-2012, 22:30

برچسب برای این موضوع

بوک مارک ها

بوک مارک ها

مجوزهای ارسال و ویرایش

  • شما نمی توانید موضوع جدید ارسال کنید
  • شما نمی توانید به پست ها پاسخ دهید
  • شما نمی توانید فایل پیوست ضمیمه کنید
  • شما نمی توانید پست های خود را ویرایش کنید
  •