واضح آرشیو وب فارسی:سایت ریسک: View Full Version : اين كد رو چي كارش كنم درست بشه؟؟؟ mahdi7s28-11-2008, 11:27 AMسلام دوستان كد زير كد كلاس اعداد بزرگ هست كه چند operator جديد از جمله + بهش اضافه كردم ولي نمي دونم چرا برنامه درست كار نمي كنه خيلي هم روش كار كردم و حتي يك operator قدرتمند + هم واسش نوشتم ولي مثل اينكه مشكل اين كد يه چيز ديگه بود اونو حذف كردم اين يكي رو گذاشتم نكنه برطرف بشه ولي نشد. در ضمن وقتي هم برنامه اجرا ميشه يك پيغام از طرف ويندوز مياد و ميگه به علت وجود يك مشكل مي بايست برنامه بسته شود كه اين يكي هم نمي دونم واسه چي هست لطفا در حل اين دو مشكل كمكم كنيد.:11: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! hamidreza_buddy28-11-2008, 11:19 PMبهتره که طول اعداد رو ثابت بگیری. مثلاً فقط اعداد پنجاه رقمی.. و برای اعداد کوچکتر بقیه رو با صفر پر کنی. مثلاً عدد 20 رد بع صورت زیر در آرایه ذخیره کنی: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! 48 تا صفر و دو رقم آخر 20 هست. همچنین شروع کنی و از آخر آرایه رو پر کنی. در ضمن برای پیاده سازی فقط نیاز به یک حلقه می باشد.. همچنین باید نقلی ها رو هم چک کنی: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! mahdi7s28-11-2008, 11:55 PMسلام خيلي ممنون از كمكتون بهتره که طول اعداد رو ثابت بگیری. مثلاً فقط اعداد پنجاه رقمی.. و برای اعداد کوچکتر بقیه رو با صفر پر کنی... حرف شما درست ولي اين كه ديگه اعداد بزرگ نيست! بايد توجه كرد كه اعداد پايان ناپذير هستند و ممكن هست هر مقداري تعداد طول ارقامشون باشه من مي خوام اين كلاس طوري باشه كه بعدا كه كلاس هايي از جمله توان ازش مشتق ميشن هر عددي رو به هر تواني رو بتونه محاسبه كنه و بعدشم تا آخرين عدد نتيجه رو نشون بده... لطفا در اين مورد راهنماييم كنيد. در ضمن اگر عملگر + كه نوشتيد به صورت زير مي بود بهتر نبود؟ چرا؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! :11::11::11::11: hamidreza_buddy29-11-2008, 10:00 PMif( this->itsbignumber[i]>9 ) { نه! باید اول جمع کنید و بعد مقایسه کنید که مقدار اون جمع از 9 بیشتر شده یا نه. دقیقاً مثل اینکه داری با کاغذ و قلم جمع رو انجام می دی. به نظرم روی کاغذ چند تا عدد رو انجام بده تا درست متوجه الگوریتم بشی. در ضمن در مورد طول اعداد. شما درست می گی ولی معمولاً عدد بیشتر از 20 رقم کاربردی نداره. برای مثال ما یه پروژه داشتیم که باید ماشین حساب با طول اعداد 20 رقم می نوشتیم. ولی اگه بیشتر از 20 رقم باشه که دیگه اصلاً تو صفحه جا نمیشه! البته بستگی به کاربردتون داره. ممکنه نیاز داشته باشید طول اعداد هیچ محدودیتی نداشته باشد. قبل از نوشتن هر الگوریتمی که به ذهنت رسیده، حتماً حتماً حتماً اول روی کاغد روش فکر کن و چند تا مثال برای اون الگوریتم روی کاغذ بوسیله اون الگوریتم حل کن ببین درسته یا خیر. همچنین دقیقاً متوجه می شی که چه جوری باید الگوریتم رو تبدیل به کد کنی. ی mahdi7s30-11-2008, 03:57 PMسلام من در كد يه اشتباه كردم تصحيحش مي كنم آيا كد زير بهتر نيست؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! hamidreza_buddy01-12-2008, 02:05 AMآره به نظر درست عمل می کنه. ولی کد خودتون رو با کد من مقایسه کنید. کدی که من نوشتم قابل فهم تره و بیش تر منطبق با منطقیه که یک انسان روی کاغذ عمل جمع رو انجام می ده. ترجیجاً باید از پیچیده کردن برنامه ها خودداری کنید و جوری کد رو بنویسید که با منطق جور باشه. اون موقع اگه مشکلی پیش اومد به راحتی می تونید برنامه رو عیب یابی کنید. همچنین اگه کد رو به کس دیگری بدهید می تونه راحت کد رو متوجه بشه. مثلاً وقتی این عمل توی در هر صورتی انجام میشه: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! بهتره بیرو ن از if else باشه. یا مثلاً اول جمع رو انجام بدی و ذخیره کنی و بعدش در صورت نیاز 10 رو ازش کم کنی. سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 265]