مشکل در کد نویسی-کمک کنید

شروع موضوع توسط h_mirgh20 ‏28 ژانویه 2011 در انجمن Action Script 3

وضعیت موضوع:
موضوع بسته شده است.
  1. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    سلام
    دوستان من میخوام با یک کد اکشن اسکریپت 3 کلمه عبور تصادفی بسازم
    مثل این کد
    HTML:
    function makeid()
    {
     var text = "";
     var possible = "کد2"&&"کد1";
     for (var i=0; i < 10; i++)
    {
     text +=  possible.charAt(Math.floor(Math.random() * possible.length));
    }
    return text;
    }
    trace(makeid());
     
    ولی مشکلی که هست من میخوام کد1 و کد2 پشت سر هم بیان
    والان با این کد شکسته میشن
    من میخوام اینطور نشه
    اینجوری بشه نتیجه کد:
    کد1کد2
    کد2کد1

    لطفا راهنمایی کنید.
    :rose::rose::rose:
    :snap:
     
    نوشته شده توسط h_mirgh20 در ‏28 ژانویه 2011
  2. JavidFlasher

    JavidFlasher کاربر فعال

    ارسال‌ها:
    901
    تشکر شده:
    792
    امتیاز دستاورد:
    93
    PHP:


    function makeid()
    {
    var text:String = "";
    var possible:Array =[ "کد2'',''کد1"]
    for (var i=0; i < 10; i++)
     {
    
text +=  possible[Math.floor(Math.random() * possible.length)];
    }
     return text;
    }
    trace(makeid());
     
    نوشته شده توسط JavidFlasher در ‏28 ژانویه 2011
    ++Hadi++ و h_mirgh20 از این پست تشکر کرده اند.
  3. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    جاوید جان ارور میده:
    PHP:
    Scene=Scene 1, layer=Layer 1, frame=1, Line 3 Syntax error.
    Scene=Scene 1, layer=Layer 1, frame=1, Line 4 Syntax error.
     
     
    نوشته شده توسط h_mirgh20 در ‏28 ژانویه 2011
  4. JavidFlasher

    JavidFlasher کاربر فعال

    ارسال‌ها:
    901
    تشکر شده:
    792
    امتیاز دستاورد:
    93
    متاسفانه به فلش دسرسي ندارم تستش کنم اينو ببينين:مشکل نحوي داره بگردين جايي کوتيشني پرانتزي اشتبا نشده
    PHP:

    function makeid()
    {
    var text:String = "";
    var possible:Array =[ "کد2'',''کد1"]
    for (var i=0; i < 10; i++)
     {
    text +=  possible[Math.floor(Math.random() * possible.length)];
    }
     return text;
    }
    trace(makeid());
     
    نوشته شده توسط JavidFlasher در ‏29 ژانویه 2011
    h_mirgh20 از این پست تشکر کرده است.
  5. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    PHP:
    function makeid()
    {
    var text:String = "";
    var possible:Array =[ "کد2'',''کد1"]
    for (var i=0; i < 10; i++)
     
    text +=  possible[Math.floor(Math.random() * possible.length)];
     return text;
    }
    trace(makeid());  
     
    الان ارور نمیده ولی ایجوری میشه کدها:
    کد2'',''کد1کد2'',''کد1کد2'',''کد1کد2'',''کد1کد2'',''کد1کد2'',''کد1کد2'',''کد1کد2'',''کد1کد2'',''کد1کد2'',''کد1

    من میخوام تک تک چاپ کنه
    مثلا: کد1کد2
    کد2کد1
    کد2
    کد1
    بعد سطر آخر trace(makeid()) بزنم تعدادش زیاد تر بشه
    و ' ' و نداشته باشه
     
    نوشته شده توسط h_mirgh20 در ‏29 ژانویه 2011
  6. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    کمک

    PHP:
    function makeid()
    {
     var text:String = "";
     var possible:Array = ["code1","code2","code3","code4","code5"];
     for (var i=0; i < 10; i++)
     {
     
      text +=  possible[Math.floor(Math.random() * possible.length)];
     }
     return text;
    }
    trace(makeid())
     
    آقا من میخوام این کدها در تمام حالتهای ممکن کنار هم قرار بگیرن
    مثلا:
    کد (Text):
    code1
    code2
    code3
    .
    .
    .
    code1code2
    .
    .
    .
    code1code2code3code4code5code2code3code4code5
    .
    .
    .
    البته میخوام طولش محدود باشه مثلا 10 رقم باشه

    لطفا یکی کمک کنه
    :rose::rose::rose:
    :snap:
     
    نوشته شده توسط h_mirgh20 در ‏29 ژانویه 2011
  7. armanbm

    armanbm کاربر VIP

    ارسال‌ها:
    517
    تشکر شده:
    462
    امتیاز دستاورد:
    16
    سوال شما بیشتر الگوریتمی هست تا فلشی. که البته هیچ اشکالی نداره...
    الگوریتم شما بابد به طور بازگشتی باشه.
    تابع درون خودش به تعداد کد ها ی موجود درون آرایه فراخوانی بشه. و تو هر کدوم یکی از کد ها رو اول بزاره و اونو حذف کنه.
    و کافیه یه شرط هم بزارید که اگه طول رشتمون بزرگتر از 10 شد تابع برگرده، یعنی Return کنه.

    البته این ساده ترین راه هست که یکمی تعداد محاسباتش زیاده اما نوشتنش ساده هست.
     
    نوشته شده توسط armanbm در ‏29 ژانویه 2011
    Avang2005 و h_mirgh20 از این پست تشکر کرده اند.
  8. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    میشه شما زحمتش رو بکشید :rose:
    من زیاد وارد نیستم
     
    نوشته شده توسط h_mirgh20 در ‏29 ژانویه 2011
  9. armanbm

    armanbm کاربر VIP

    ارسال‌ها:
    517
    تشکر شده:
    462
    امتیاز دستاورد:
    16
    نوشتن عین کد برای پاسخ به سوال در انجمن ممنوع هست . (البته این نظر من هست).
    و من هم تسلط بالایی روی دستورات کار با رشته در فلش ندارم. لذا شبهه کد رو براتون مینویسم:

    1. برنامه ی شما یک تابع داره که ورودیش آرایه ی possible و متعیر st هست درون st هم کد ها رو تولید میکنه و اگه طول رشته به 10 رسید اون رو تو texbox1 مینویسه.
    2.تابع در ابتدا طول رشته ی st رو چک میکنه اگه بزرگتر یا مساوی 10 بود، اون رو به textbox1 اضافه میکنه و از تابع خارج میشه، در غیر این صورت به شماره ی 3 میره.
    3.یک حلقه به تعداد عتاصر possible داره که توش:
    possible را در temp کپی میکند و عنصر شماره ی اندیس حلقه رو از temp حذف کرده و به انتهای رشته ی st میچسباند، و خود تابع را به ازای temp و st قراخوانی می کند.


    حقیقتا الگوریتمی که نوشتم کامله و تنها شما باید اون رو تبدیل به کد بکنی.
    مطمئن باش اینطوری برای شما هم تجربه ی خوبی میشه تا بیشتر با کد نوشتن دوست بشی.

    میبخشید اگر کامل نبود.
    در پناه خداوند خورشید و ماه.
     
    نوشته شده توسط armanbm در ‏29 ژانویه 2011
    h_mirgh20 و Avang2005 از این پست تشکر کرده اند.
  10. the_king

    the_king مدیرکل انجمن

    ارسال‌ها:
    11,166
    تشکر شده:
    11,437
    امتیاز دستاورد:
    113
    راستش من این تاپیک رو چند بار از ابتدا تا انتها خوندم، نه فقط الان، از همون لحظه ایجاد شدنش، اما هنوز متوجه
    درخواست نویسنده تاپیک نشدم. فقط به نظرم این نکته رو در نظر بگیرید که اگه قراره یک رشته 10 کاراکتری
    ایجاد بشه، الزاما مجموع طول possible ها بزرگتر از این 10 کاراکتر نیست، یعنی ممکنه لازم باشه که یک یا
    بیش از یکی از عنصر های possible بیش از یکبار در st تکرار شوند. اگر قرار باشه که هر عنصری رو که یکبار
    اضافه کردین در مرحله 3 از temp حذف کنید ممکنه مجموعه temp خالی بشه و در یک حلقه بی انتها گرفتار بشیم.
    یک مساله دیگه طول عناصر داخل possible است، اینها قراره تک کاراکتری باشند یا طول هاشون متفاوته؟
    فرضا اگه طول یکی شون 3 کاراکتر باشه شاید با وجود اون عنصر در رشته، هیچوقت خروجی طولش دقیقا 10 نشه.

    به نظرم سوال اصلی تاپیک نیاز به یک مثال واضح داره، code1 و code2 و ... که هر کدومشون 5 کاراکتری اند، پس
    اگه حلقه for بجای 10 بار 2 بار اجرا بشه، یک رشته 10 کاراکتری تحویل میده.
     
    نوشته شده توسط the_king در ‏29 ژانویه 2011
  11. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    چرا؟
    من موافق نیستم آقا آرمان،اگر عین کد رو بزاری و من ببینم بیشتر یاد میگرم تا اینکه خودم چند بار تلاش کنم و وقتی موفق نشدم دلسرد بشم

    خوب دو نفر منظور من رو فهمیدند
    شما یه بار دیگه هم تلاش کن

    آقا آرمان من نمیتونم این الگوریتم رو تبدیل به کد کنم
    بلد نیستم
     
    نوشته شده توسط h_mirgh20 در ‏29 ژانویه 2011
  12. armanbm

    armanbm کاربر VIP

    ارسال‌ها:
    517
    تشکر شده:
    462
    امتیاز دستاورد:
    16
    بله حق با شماست. ویسنده باید این نکته ریز رو در نظر بگیره که باید شرط خالی شدن temp هم اضافه بشه که اگه خالی شد ، st رو به textbox حاوی جواب ها اضافه کنه

    در مورد اینکه طولش ممکنه دقیقا ده نشه، من تو الگوریتم در نظر گرفتم. چون گفتم به محض اینکه طول به 10 رسید، یعنی فرض کنید قبل از اضافه کردن code1 طول رشته 8 باشه و بعد از اضافه کردنش 12 بشه! خوب دیگه الگوریتم اینجا وای میسته و st رو به عنوان خروجی میفرسته.

    در کل حق با شماست صورت سوال کمی گنگ هست. و من یک حالت رو فرض کردم و توضیح دادم.
     
    نوشته شده توسط armanbm در ‏29 ژانویه 2011
    the_king از این پست تشکر کرده است.
  13. armanbm

    armanbm کاربر VIP

    ارسال‌ها:
    517
    تشکر شده:
    462
    امتیاز دستاورد:
    16
    دوست خوبم من تو دانشگاه حل تمرین در سی++ رو داشتم. نمیدونی تاحالا چند بار این جمله ها رو شنیدم: من نمیتونم! نه نمیشه! اصلا امکانش نیست! راست میگی خودت حل کن! و...
    اما بعد از مدتی خیلی هاشون خودشون رفتن حل کردن آوردن!!!


    من یه شما کاملا حق میدم. برنامه نویسی اولش بنظر خیلی سخته. ولی مطمئن باش اینطوری نخواهد ماند!
    اگه من الان کد رو به شما بدم به دو دلیل کار درستی نکردم:
    1. ماهی به شما دادم و ماهیگیری یادتون ندادم(در حالی که الگوریتم من روش فکر کردن رو هم نشون میده.)
    2. که خیلی مهمه: اینجا انجمن فلش هست واسه اینکه مردم مشکلاشون رو بگن و یا آموزش بدن و یا آموزش بگیرن. اما اگه کسی پروژه داره باید سفارش بده.

    موفق و موید باشی دوست خوبم.
    یا علی .
     
    نوشته شده توسط armanbm در ‏29 ژانویه 2011
    Avang2005 از این پست تشکر کرده است.
  14. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    ای بابا !!!
    اگر نمیتونید کمک کنید چرا اسپم میدید

    سوال من کاملا واضحه

    در جواب پست دوم آقا آرمان :
    از همون اول میگفتی مشکل کجاست(پول)
    فکر نمیکنم این کاره من اسمش پروژه باشه

    من اگر میخواستم زبان اکشن رو یاد بگیرم اول آموزش اکشن اسکریپت از صفر تا بینهایت رو میخوندم

    یک سری مسائل هم نمیشه اینجا بیان کرد

    واسه مجید آنلاین متاسفم که با این شهرتش کاربرانی مثل شما داره


    :sad:

    :snap:
     
    نوشته شده توسط h_mirgh20 در ‏29 ژانویه 2011
  15. JavidFlasher

    JavidFlasher کاربر فعال

    ارسال‌ها:
    901
    تشکر شده:
    792
    امتیاز دستاورد:
    93
    ببينين آقا خواهش ميکنم مواظب حرفاتون باشين!حق کاملا با armanbmهستش وظيفه ي ايشون تحويل دادن کد به شما نيست.پس خودتون چيکارين؟
ببينين در جوابتون مثل اينکه ميخواين تمام حالت هاي قرار گيري کد هاتون رو داشته باشين واسه اينکار ميتونين از کلاس راندوم بدون تکرار که قبلا نوشته بودم (تو انجمن هست يه سرچ کن)استفاده کني که ميتوني تمامي حات قرار گرفتن کد ها رو بدون تک رار داشته باشي
     
    آخرین ویرایش: ‏29 ژانویه 2011
    نوشته شده توسط JavidFlasher در ‏29 ژانویه 2011
    Avang2005، the_king، h_mirgh20 و یک نفر دیگر از این ارسال تشکر کرده اند.
  16. armanbm

    armanbm کاربر VIP

    ارسال‌ها:
    517
    تشکر شده:
    462
    امتیاز دستاورد:
    16
    دوست عزیز هیچ اشکالی نداره کسی به خاطر کاری که میخواد انجام بده پول بخواد!

    در ضمن میتونی از دوستای قدیمی سایت پی ام بدی و بپرسی، بهت میگن که من تقریبا پروژه انجام نمیدم مگر واسم جالب باشه.

    در نهایت هم شما رو بخاطر پیش داروی غلط و توهین به خودم می بخشم.

    و از دوستان واقعا عذر میخوام چون گناه من نابخشودنی هست. ممن فکر کردم میشه رو راست و بدون طلف کردن وقت سخن رو به بچه ها بگم و فکر میکردم ظرفیتش وجود داره. حواسم نبود دارم تو یه فروم ایرانی پست میدم.


    یا علی مدد.
     
    نوشته شده توسط armanbm در ‏29 ژانویه 2011
  17. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    :shock:
    مواظب کدوم قسمتش باشم؟

    بله ایشون هیچ وظیفه ای ندارن ،من اگر بلد بودم که اینجا نمیومدم

    اما اینجا مجید آنلاینه و مجید آنلاین هم این ادعا رو داره که مرجع گرافیک و... هست که فلش هم جزئشه

    البته حق داری از دوستت طرفداری کنی
     
    نوشته شده توسط h_mirgh20 در ‏29 ژانویه 2011
  18. h_mirgh20

    h_mirgh20 New Member

    ارسال‌ها:
    24
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    اشکالی نداره پول بگیری،من هم نخواستم پول نگییری

    من توهین نکردم
    همینطور که در جواب پیام خصوصیت گفتم

    ظرفیت چی رو نداشتم؟

    راجع به جمله آخر من کاملا موافقم

    فکر کنم اگر ادامه بدیم هر دومون رو بن کنن
     
    نوشته شده توسط h_mirgh20 در ‏29 ژانویه 2011
  19. GFX Master

    GFX Master مدیر انجمن گرافیک دو بعدی ومسئول فروشگاه

    ارسال‌ها:
    15,101
    تشکر شده:
    26,714
    امتیاز دستاورد:
    36
    h_mirgh20 عزیز اینجا یه انجمن هست. هر کسی حق حرف زدن داره. نه من و نه هیچ مدیر دیگه ای به خودش اجازه نمیده تا زمانی که کسی
    بی احترامی یا نقض قوانین نکرده بهش اخطار بده یا بن کنه و ...
    پس این پیش زمینه ی ذهنی رو نداشته باشید که اگر بحث بخواد ادامه پیدا کنه احتمال بن شدن هست!!!

    اما بحث داریم تا بحث! این بحثی که اواخر این تاپیک پیش اومد واقعا مشکل هیچکس رو حل نمیکنه و فقط کدورت ایجاد میکنه.

    لازم هست بگم که انجمن مجیدآنلاین یه محلی هست برای تجمع دوستانی که میخوان بحث تخصصی داشته باشن. در زمینه های مشخص.
    ولی از طرفی آیه نازل نشده که هر تاپیکی که زده میشه حتما باید به نتیجه برسه! چه بهتر که تمام تاپیک ها نتیجه داشته باشن ولی
    بعضی اوقات پیش میاد که دوستان در توانشون نیست که کمک کنن. این به معنای این نیست که کل انجمن مجیدآنلاین محلیه که به
    کاربرهاش اهمیت نمیده!

    در آخر حرفم ، خواهشم این هست که برای جلوگیری از کدورت ، سعی کنید فقط اگر میتونید کمکی کنید پست بزنید.
    امیدوارم این تاپیک به نتیجه ی خودش برسه.

    موفق باشید.
     
    نوشته شده توسط GFX Master در ‏30 ژانویه 2011
    ++Hadi++، h_mirgh20، Majid و 2 نفر دیگر از این ارسال تشکر کرده اند.
  20. Avang2005

    Avang2005 مدیر انجمن

    ارسال‌ها:
    3,810
    تشکر شده:
    4,092
    امتیاز دستاورد:
    113
    سلام دوست من

    اگه توجه کنید ما برای انجمن فلش قوانینی داریم که اگه خوانده باشید متوجه میشید که هرگونه در خواست کد و نمونه و ... در انجمن فلش ممنوعه مگر در شرایط خاص کسی لطفی کنه و برای کاربر نمونه رو تهیه کنه . لطف کنید با دقت بخوانید :

    در مورد مبحث مجید آنلاین همونجوری که GFX Master عزیز گفتند در انجمن هزاران تاپیک بدون نتیجه میمانند و هیچ کاربری اجازه نداره به شخص خاص و یا کاربری توهین کنه که چرا به تاپیک من رسیدگی نمیشه و این حرف ها ما اینجا هستیم تا مشکلات دوستان برطرف کنیم نه اینکه لقمه اماده بزاریم توی دهن کاربر ها

    در هر حال این بحث رو تغییر بدید و بنده تمام حق رو به armanbm عزیز میدم که تلاش ایشون فقط برای آموزش و بفکر انداختن کاربر بوده تا پیشرفت کنه اگه مسئله پول بود ایشون همون اول تاپیک به شما اعلام میکرد که من اینقدر میگیرم برات انجام میدم ولی ایشون یک الگوریتم کلی رو برای شما مثال زدند که با کمی فکر براحتی میتونستید به نتیجه برسید . الان هم دیر نشده شروع کنید هرکجا به مشکل برخورد کردید مطرح کنید تا برسسی بشه

    با تشکر از همه دوستان

    موفق باشید
     
    نوشته شده توسط Avang2005 در ‏30 ژانویه 2011
    ++Hadi++، the_king و armanbm از این ارسال تشکر کرده اند.
وضعیت موضوع:
موضوع بسته شده است.

به اشتراک بگذارید