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

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

h_mirgh20

New Member
سلام
دوستان من میخوام با یک کد اکشن اسکریپت 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:
 

JavidFlasher

کاربر فعال
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());
 

h_mirgh20

New Member
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());

جاوید جان ارور میده:
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.
 

JavidFlasher

کاربر فعال
متاسفانه به فلش دسرسي ندارم تستش کنم اينو ببينين:مشکل نحوي داره بگردين جايي کوتيشني پرانتزي اشتبا نشده
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());
 

h_mirgh20

New Member
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

New Member
کمک

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())

آقا من میخوام این کدها در تمام حالتهای ممکن کنار هم قرار بگیرن
مثلا:
کد:
code1
code2
code3
.
.
.
code1code2
.
.
.
code1code2code3code4code5code2code3code4code5
.
.
.
البته میخوام طولش محدود باشه مثلا 10 رقم باشه

لطفا یکی کمک کنه
:rose::rose::rose:
:snap:
 

armanbm

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

البته این ساده ترین راه هست که یکمی تعداد محاسباتش زیاده اما نوشتنش ساده هست.
 

h_mirgh20

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

البته این ساده ترین راه هست که یکمی تعداد محاسباتش زیاده اما نوشتنش ساده هست.

میشه شما زحمتش رو بکشید :rose:
من زیاد وارد نیستم
 

armanbm

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

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


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

میبخشید اگر کامل نبود.
در پناه خداوند خورشید و ماه.
 

the_king

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

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

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

h_mirgh20

New Member
نوشتن عین کد برای پاسخ به سوال در انجمن ممنوع هست . (البته این نظر من هست).
چرا؟
من موافق نیستم آقا آرمان،اگر عین کد رو بزاری و من ببینم بیشتر یاد میگرم تا اینکه خودم چند بار تلاش کنم و وقتی موفق نشدم دلسرد بشم

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

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

آقا آرمان من نمیتونم این الگوریتم رو تبدیل به کد کنم
بلد نیستم
 

armanbm

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

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

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

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

در کل حق با شماست صورت سوال کمی گنگ هست. و من یک حالت رو فرض کردم و توضیح دادم.
 

armanbm

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


آقا آرمان من نمیتونم این الگوریتم رو تبدیل به کد کنم
بلد نیستم

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


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

موفق و موید باشی دوست خوبم.
یا علی .
 

h_mirgh20

New Member
ای بابا !!!
اگر نمیتونید کمک کنید چرا اسپم میدید

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

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

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

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

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


:sad:

:snap:
 

JavidFlasher

کاربر فعال
ببينين آقا خواهش ميکنم مواظب حرفاتون باشين!حق کاملا با armanbmهستش وظيفه ي ايشون تحويل دادن کد به شما نيست.پس خودتون چيکارين؟
ببينين در جوابتون مثل اينکه ميخواين تمام حالت هاي قرار گيري کد هاتون رو داشته باشين واسه اينکار ميتونين از کلاس راندوم بدون تکرار که قبلا نوشته بودم (تو انجمن هست يه سرچ کن)استفاده کني که ميتوني تمامي حات قرار گرفتن کد ها رو بدون تک رار داشته باشي
 
آخرین ویرایش:

armanbm

کاربر VIP
ای بابا !!!
اگر نمیتونید کمک کنید چرا اسپم میدید

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

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

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

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

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


:sad:

:snap:

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

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

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

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


یا علی مدد.
 

h_mirgh20

New Member
ببينين آقا خواهش ميکنم مواظب حرفاتون باشين!حق کاملا با armanbmهستش وظيفه ي ايشون تحويل دادن کد به شما نيست.پس خودتون چيکارين؟


:shock:
مواظب کدوم قسمتش باشم؟

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

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

البته حق داری از دوستت طرفداری کنی
 

h_mirgh20

New Member
دوست عزیز هیچ اشکالی نداره کسی به خاطر کاری که میخواد انجام بده پول بخواد!

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

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

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


یا علی مدد.

اشکالی نداره پول بگیری،من هم نخواستم پول نگییری

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

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

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

فکر کنم اگر ادامه بدیم هر دومون رو بن کنن
 

GFX Master

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

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

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

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

موفق باشید.
 

Avang2005

مدیر انجمن
سلام دوست من

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


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

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

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

موفق باشید
 
وضعیت
موضوع بسته شده است.

جدیدترین ارسال ها

بالا