PDA

View Full Version : ساخت اعداد وحروف در هم



Mask
سه شنبه 20 بهمن 1388, 16:03 عصر
با سلام
سوالم اینه که من 5 عدد دارم
1 و 2 و 3 و 4و 5
و 5 حرف
A , B , C , D , E
می خاستم ببینم چه تابع یا حلقه ای باید نوشت که از تشکیل این حروف و عدد چند تا استرینگ 5 حرفی میشه ساخت که هیچ کدوم هم شبیه به هم نباشه؟
ممنون از جوابتون.

hadisalahi2
سه شنبه 20 بهمن 1388, 16:30 عصر
باید این اعداد و حروف رو به صورت کاراکتر در یک آرایه ذخیره کنی و بعد با استفاده از تابع Randomize شروع به تولید اعداد تصادفی کنی.
حالا هر سری باید کاراکتر انتخاب شده رو با کاراکترهای قبلی جمع کنی. البته قبل از جمع کردن باید این کار رو در یک متغیر موقت انجام بدی و در صورتی که رشته جدید با رشته های دیگه برابر نبود کاراکتر رو به رشته اضافه کنی.
برای این کار میتونی از یک حلقه While استفاده کنی.

hadiaj168
چهارشنبه 21 بهمن 1388, 11:29 صبح
الگوریتم تمام زیر مجموعه های یک مجموعه (http://www.barnamenevis.org/forum/showpost.php?p=707336&postcount=6)
البته به زبان c++ که به راحتی میتونید به پاسکال تبدیلش کنید

Felony
چهارشنبه 21 بهمن 1388, 12:53 عصر
با سلام
سوالم اینه که من 5 عدد دارم
1 و 2 و 3 و 4و 5
و 5 حرف
A , B , C , D , E
می خاستم ببینم چه تابع یا حلقه ای باید نوشت که از تشکیل این حروف و عدد چند تا استرینگ 5 حرفی میشه ساخت که هیچ کدوم هم شبیه به هم نباشه؟
ممنون از جوابتون.

این که 5 تا حرف و 5 تا عدد داری مهم نیست ، مهم این هست که شما میخوای این ها رو به صورت رشته در بیاری و ببینی چند تا رشته 5 کارکتری میتونی با این 10 کارکتر بسازی !

پس میشه چند تا رشته 5 کارکتری با 10 کارکتر میشه ساخت به طوری که رشته ها یکسان نباشن ، درسته ؟

پس :

تعداد رشته ها قابل ایجاد بدون تکرار = 10 * 9 * 8 * 7 * 6 که میشه 30240 حالت بدون تکرار .

موفق یاشید .

Hadi_Fayyaz
چهارشنبه 21 بهمن 1388, 13:17 عصر
با سلام
سوالم اینه که من 5 عدد دارم
1 و 2 و 3 و 4و 5
و 5 حرف
A , B , C , D , E
می خاستم ببینم چه تابع یا حلقه ای باید نوشت که از تشکیل این حروف و عدد چند تا استرینگ 5 حرفی میشه ساخت که هیچ کدوم هم شبیه به هم نباشه؟
ممنون از جوابتون.

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

امیدوارم بدردت بخوره.
موفق باشی

best_ariya
چهارشنبه 26 خرداد 1389, 23:56 عصر
با سلام
بسیار ممنون هستم بابت برنامه ای که نوشته اید.
لطفا این برنامه را برای کلیه اعداد و حروف و کاراتر ها بنویسید یعنی 1..9 و a..z , A..Z,!@#$%^&*()

با تشکر فراوان

h_mohamadi
پنج شنبه 27 خرداد 1389, 13:08 عصر
همان طور که دوستان فرمودند از تابع Randomize استفاده کنید

best_ariya
پنج شنبه 27 خرداد 1389, 23:42 عصر
نه من نمی خواهم به صورت Random باشه می خواهم پشت سر هم باشه یعنی اگر طرف هر کلمه ای در آن جستجو کرد بتواند آن را پیدا کند به طور مثال اگر 234JG&JHGF#$%%^& این را هم جستجو کرد در لیست پیدا شود لطفا اگر می شود برنامه را بر اساس موارد بالا اصلاح نمایید

با تشکر

SAASTN
شنبه 29 خرداد 1389, 01:20 صبح
برای حل درست این مسئله به یه الگوریتم backtrack نیازه که همه حالات رو ایجاد کنه. برنامه زیر رو گذاشتم، فقط تخیلی به قضیه نگاه نکنی! 12 تا کاراکتر اونم تو یه بازه 0 تا 255 می تونه دو سه میلیارد سال تول بکشه. حالت اولیه تنها برای حروف بزرگ انگلیسی و برای رشته های به طول 1 تا 3 کاراکتر هست که سریع انجام میشه. اگه واقعا به اطلاعات برای یه فضای حالات بزرگ نیاز هست بهتره سطر LoadFromFile رو حذف کنی که زمان زیادی می بره و از اطلاعات داخل فایل استفاده کنی.

موفق باشید