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

[ + افزودن آگهی متنی جدید ]




صفحه 3 از 3 اولاول 123
نمايش نتايج 21 به 25 از 25

نام تاپيک: كمك فوري در مورد پاسكال (تا 21 دي وقت دارم خواهشن جواب بدين)

  1. #21
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    الان فهمیدم چی نوشتی! نخیرشم!
    شما می‌خوای مثلا پسورد یه ایمیل رو برگردونی، نه یه گاوصندوق!
    یعنی باید همه‌ی پسورد رو یه جا چک کنه!
    مثلا اگه ورودی ‌Blossom و 3 باشه باید این ها رو تولید کنه:
    BBB
    BBL
    BBO
    BBS
    BBM
    BLB
    BLL
    BLO
    BLS
    یعنی مجموعاً د به توان تعداد کاراکتر های غیر تکراری! برای مثال من 3 به توان 5 کلمه باید تولید کنه.
    یکم فهمیدم یکم نفهمیدم !!!
    اون یکمی که فهمیدم اینه که باید یک رشته و یک عدد صحیح رو بگیریم ارقام تکراری رشته رو حذف کنیم و به تعداد ارقام رشته به توان عدد صحیح ورودی ، زیر رشته های غیر تکراری ایجاد کنیم
    اون یکمی که نفهمیدم مربوط به مثالت میشه ! تو مثالت مشکل ندارم فقط یه سوال فسقلی دارم ! تعداد ارقام تکراری رشته ورودیت 5 تایه و عدد ورودی هم 3 هست یعنی پنج به توان سه رشته باید تولید بشه !!! بخاطر اینکه این اعداد خیلی زیاد میدن ادامشو ننوشتی دیگه درسته ؟ چون سه تا نقطه نزدی شک کردم که شاید اشتباه از برداشت من باشه !
    یکم روش فکر میکنم و نتیجه رو میزارم همینجا !
    ولی اولین چیزی که مسلمه اینه که باید اول کاراکتر های تکراری رشته رو با یک تابع دیگه حذف کنیم

  2. #22
    پروفشنال
    تاريخ عضويت
    Jan 2007
    محل سكونت
    Gnu/Linux
    پست ها
    802

    پيش فرض

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

  3. #23
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    با VB.Net یک الگوریتم بازگشتی نوشتم ولی همونطور که خودت هم بهتر میدونی الگوریتم های بازگشتی از سرعت و کارایی خوبی برخوردار نیستن ، فعلا که چیز دیگه ای به ذهنم نمیرسه !!!
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    عذر میخوام که یکم دیر شد چون اول از همه یکمکی سخت بود و بعدش این چند روزه زیاد فرصت نمیکردم روش فکر کنم

  4. #24
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    یادم رفت توضیح بدم !!
    متغییر M صرفا جهت شمارش تعداد رشته هایی که تولید شده مثلا برای رشته ورودی Ali و ترکیب های چهار تایی این رشته باید سه به توان چهار رو نشون بده ، این متغییر بیشتر برای تست بدرد میخوره که بدونی تعداد رشته هایی که تولید شده صحیح هست یا خیر

    متغییر N مشخص میکنه که ترکیبات چند تایی باید تولید بشه

    متغییر Str رشته ورودی رو توش میریزی

    متغییر S - ورودی تابع خود بازگشتی A رشته ای که تا الان تولید ده رو برمیگردونه

  5. #25
    پروفشنال
    تاريخ عضويت
    Jan 2007
    محل سكونت
    Gnu/Linux
    پست ها
    802

    پيش فرض

    آره، خوب درومده...
    جالب بود، البته این بحث رو برای یاد گرفتن راه انداختیم ها! دیر شد معنی نداره!
    من این سوال رو این طور حل کردم:
    تمام حروف مجاز رو توی یک آرایه ریختم.
    یک آرایه ی عددی به طول N (که از ورودی می‌گیره) ساختم که تمام محتویاتش 0 بود.
    بعد عنصر اندیس 0 رو +1 کردم و چک کردم که این عنصر بیشتر از آخرین اندیس آرایه ی حروفم نشه، اگه شد 0ش می کنم و عنصر بعد رو +1 می کنم و چک می‌کنم که عنصر دوم هم محتویاتش بیشتر از حد مجاز نشه، اگه شد عنصر دوم رو 0 می‌کنم و عنصر سوم رو +1 و این کار رو برای تمام آرایم (توی یه حلقه‌ی for ) تکرار می‌کنم.
    با استفاده از این دو تا آرایه، خروجی رو تولید می‌کنم و به مرحله قبل می‌رم تا وقتی که آخرین عنصر آرایه سر ریز بشه.
    هم سریع بود و هم آسون.
    البته امید وارم که خوب توضیح داده باشم، اگه این طور نیست که یه مثال بزنم.

صفحه 3 از 3 اولاول 123

Thread Information

Users Browsing this Thread

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

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •