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

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




نمايش نتايج 1 به 9 از 9

نام تاپيک: يه كد كوچك با مشكلات زياد

  1. #1
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    13 يه كد كوچك با مشكلات زياد

    دوستان من ميخاستم يه كلاس طراحي كنم كه بشه بهش اعداد بزرك داد(1000 رقمي) ولي نمي دونم چرا اين همه ارور مي ده
    لطفا كمكم كنيد تا اين ارورها رو تصحيح كنيم

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by mahdi7s; 19-11-2008 at 15:14.

  2. #2
    آخر فروم باز فاطـمه's Avatar
    تاريخ عضويت
    Jun 2008
    محل سكونت
    Mashhad
    پست ها
    1,755

    پيش فرض

    میشه دقیقا بگی اینا چیه که نوشتی؟!
    خب کدت خیلی اشکال داره...

  3. #3
    داره خودمونی میشه aryan1423's Avatar
    تاريخ عضويت
    Sep 2008
    پست ها
    133

    پيش فرض

    اولین مشکلی که باید درست کنی ورودی خوندنته
    باید کاراکتر به کاراکتر بری جلو.
    مثلا می تونی اول با cin.get کل عدد را در آرایه ای از char بریزی اونوقت روی این آرایه for بزنی و آرایه ی int کلاس Int ت را برابر اون کنی:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  4. این کاربر از aryan1423 بخاطر این مطلب مفید تشکر کرده است


  5. #4
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    13

    سلام
    با توجه به كمك هاي شما اين كد رو نوشتم اما در هنگام نوشتنش سوال زير برام برام پيش اومد
    --> آيا اين امكان وجود داره كه يه char رو به يه int تخصيص بديم؟(خط 26 و 27 در همين كد)
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و اما من بايد چي كار كنم كه اين كد به اون كلاسي كه ميخام(اعداد بزرگ) نزديكتر بشه؟/ لطفا راهنمايي كنيد تا هر چه زودتر نوشتن اين كلاس رو تموم كنم.

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  6. #5
    داره خودمونی میشه aryan1423's Avatar
    تاريخ عضويت
    Sep 2008
    پست ها
    133

    پيش فرض

    کدت را خوندم.
    به نظر من بهتره در کلاست یک متغیر اینت بگذاری(مثلا tool) که می گوید این عدد ما چند رقمی است.( دیگه لازم نیست این کاره بد هم بکنی :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    )
    برای پر کردن آرایه itsBigNumber از روی آرایه ی big این کارو کن:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    امیدوارم فهمیده باشی چرا این کار را کردم(نفهمیدی بپرس)
    بعد به نظر من بهتره itsBigNumber را به صورت int * نگیری و از اول طولش را مشخص کنی.
    چون تو الان طولش را دقیقا اندازه ی طول عددت گذاشتی برای الان مشکلی نداره ولی اگه بخوای جمع و ضرب و از این چیزا به کدت اضافه کنی شاید تعداد ارقامش بیشتر شه.
    Last edited by aryan1423; 20-11-2008 at 19:17.

  7. #6
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    13

    دوست عزيز راهنمايي هاي شما خيلي بدردم خورد ولي من از دستور زير
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    سر در نميارم اين كه شما هر كاركتر رشته را منهاي كاركتر 0 مي كنيد يعني چه و دقيقا چه كاري انجام ميده؟
    و اين كه شما گفتيد نوشتن اين دستور بده!
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    مگه با نوشتن دستور زير
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    فرقي داره؟(ميگه هر دوتاش يه كاراكتر را به يه itsNumber تخصيص نميده؟)

    دوست عزيز لطفا كامل و جامع و با زباني ساده به سوالاتم پاسخ بدين.

  8. #7
    داره خودمونی میشه aryan1423's Avatar
    تاريخ عضويت
    Sep 2008
    پست ها
    133

    پيش فرض

    فرض کنید که کاراکتر[ big[i برابر رقم 5 باشد یعنی
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    مقدار اصلی داخل[ big[i برابر ASCII code رقم 5 است (یعنی '5' ) نه خود 5.


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    شما با این کار[ itsBigNumber[i را برابر ASCII code رقم 5 قرار می دهید نه خود 5.

    برای شهود بیشتر بیشتر پیشنهاد می کنم این کد را امتحان کنید:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    این کار را برای سایر ارقام غیر 5 ( 0 تا 9) نیز انجام بدهید.
    حال من می گویم اگر یک char که برابر '5' است را منهای '0' کنیم خود عدد 5 که مورد نظر ماست بدست می آید.

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    باز هم میگم برای int کارهای که مربوط به char هست را انجام ندهید( مثل برابر '0\' قرار دادن یک int که به درد نمی خورد این کار برای char مفید است نه int)
    Last edited by aryan1423; 21-11-2008 at 00:32.

  9. #8
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    سلام
    من كاملا اينو فهميدم كه اگه مثلا '9' رو منهاي '0' كنيم مقدار 9 بدست مياد
    ولي جواب اين سوال منو ندادين كه چرا وقتي يه كاركتر عدد رو منهاي كاراكتر 0 مي كنيم مقدار اون بدست مياد(وقتي كاركتر را منهاي صفر مي كنيم چه اتفاقي مي افته كه باعث ميشه خود عدد بدست بياد)

  10. #9
    داره خودمونی میشه aryan1423's Avatar
    تاريخ عضويت
    Sep 2008
    پست ها
    133

    پيش فرض

    اگه خودت یکم بررسی می کردی به راحتی می فهمیدی چرا.
    همان طور که گفتم '5' همان ASCII code رقم 5 است. و وقتی یک int را برابر '5' قرار می دهی:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    با این کار متغیر int ما برابر ASCII code رقم 5 میشود نه خود 5.

    ASCII code ارقام 0 تا 9 ('0' تا '9') اعدادی به ترتیب از 48 تا 57 هستند:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    پس '0'-'9' یعنی48-57 که برابر 9 است.

  11. این کاربر از aryan1423 بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

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

User Tag List

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

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