نمایش نتایج 1 تا 4 از 4

نام تاپیک: ضرب و تقسیم دو عدد اعشاری در مبنای n (چگونه؟؟؟))

  1. #1

    Post ضرب و تقسیم دو عدد اعشاری در مبنای n (چگونه؟؟؟))

    سلام
    من نیاز به برنامه ای دارم که دو عدد اعشاری رو دریافت میکنه در مبنای n (مثلا مبنای 70) و بعد چهار عمل اصلی رو، روی دو عدد اعمال میکنه و نتیجه رو میده.
    اونچه که به ذهن بنده رسید این هست که این برنامه به دو شکل قابل پیاده سازی هست.
    شکل اول اینه که ابتدا اعداد رو به مبنای ده ببرم و محاسبه انجام بشه و مجدد به مبنای n تبدیل بشه.
    شکل دوم اینه که بدون تغییر مبنا برنامه عملیات رو انجام بده.

    در دو شکل پیاده سازی جمع و تفریق کار سختی نیست و من تونستم کد رو بنویسمز

    مشكل اصلي بنده در پیاده سازی ضرب و تقسیم هست در دو شکل خصوصا شکل دوم.

    آیا در متلب امکانش هست بشه دو عدد اعشاری در مبنای n رو در هم ضرب یا تقسیم کرد یا نه؟؟
    ممنون میشم راهنمایی بکنید.

  2. #2

    نقل قول: ضرب و تقسیم دو عدد اعشاری در مبنای n (چگونه؟؟؟))

    سلام

    تا جایی که میدونم، عملیات اصلی توی متلب در مبنای 10 انجام میشه. البته الزامی برای استفاده از روش دوم وجود نداره و خروجی هر دو روش یکی هست. اگه نیاز دارید تا این عملیات رو در مبنای دیگه (و الزاماً با روش دوم) انجام بدید، باید خودتون کدش رو بنویسید.

    نکته دیگه اینکه با توابع آماده‌ی متلب فقط میتونید تبدیل مبنا رو در مبناهای 2 تا 36 انجام بدید. اگه نیاز به مبنای بالاتر از 36 دارین، نیاز به کدنویسی دارید.

  3. #3

    نقل قول: ضرب و تقسیم دو عدد اعشاری در مبنای n (چگونه؟؟؟))

    با سلام خدمت mb1372

    علت اینکه میخوام محاسبه بدون تغییر مبنا انجام بشه این هست که در صورت تغییر مبنا به ده محاسبه تقریبی انجام میشه برای همین خطا رخ میده و من میخوام محاسبه کاملا دقیق انجام بشه.
    من تست کردم در صورتی که ابتدا به مبنای 10 ببرم و بعد محاسبه انجام بدم و به مبنا دلخواه مجددا تبدیل کنم، تا چند رقم اول اعشار محاسبات صحیح انجام میشه اما از یه جا به بعد محاسبات غلط انجام میشه.مثلا:
    این عدد در مبنای 70 رو در نظر بگیرید:
    123.456 سه رقم اعشار به ترتیب ضرب می شوند در:
    70 به توان -1
    70 به توان -2
    70 به توان -3

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

    شما راه حلی پیشنهاد نمیکنید که از اون طریق بشه ضرب و تقسیم عادی رو که روی برگه انجام میشه رو پیاده سازی کرد برای یک مبنا خاص؟ (یعنی همون روش دوم)
    یا روشی که که تغییر مبنا به ده انجام بشه اما جلوی خطا گرفته بشه؟

  4. #4

    نقل قول: ضرب و تقسیم دو عدد اعشاری در مبنای n (چگونه؟؟؟))

    سلام مجدد

    برای نوشتن کد، باید کار با رشته ها (متغیرهای متنی) رو خوب یاد بگیرید.

    احتمالا اولین مشکلی که میخورید، پیدا کردن 70 کاراکتر متمایز برای نمایش اعداد باشه.

    برای ضرب دو عدد در مبنای دیگه میتونید قدم به قدم همون عملیاتی رو که روی کاغذ انجام میدینو به صورت کد در بیارید.

    پیشنهاد میکنم یک کد برای مبنای ساده تر بنویسید (مثلا مبنای 2) و گسترشش بدید به مبنای مورد نیازتون.

    کد نویسی رو شروع کنین و مشکلتون رو دقیق تر بپرسید.

تاپیک های مشابه

  1. سوال: الگوريتمي براي ضرب و تقسيم دو عدد 100 رقمي?
    نوشته شده توسط one hacker alone در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 1
    آخرین پست: جمعه 11 دی 1394, 19:31 عصر
  2. مبتدی: عمل ضرب و تقسیم دو عدد بدون استفاده از عملگر
    نوشته شده توسط mehdi_110 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 3
    آخرین پست: سه شنبه 29 بهمن 1392, 17:15 عصر
  3. سوال: تقسیم دو عدد اعشاری
    نوشته شده توسط f_g1348 در بخش C#‎‎
    پاسخ: 2
    آخرین پست: چهارشنبه 15 آذر 1391, 18:23 عصر
  4. سوال: مقایسه دو عدد اعشاری در اسمبلی
    نوشته شده توسط psp2004 در بخش برنامه نویسی اسمبلی خانواده x86
    پاسخ: 0
    آخرین پست: سه شنبه 04 بهمن 1390, 14:53 عصر
  5. جمع دو عدد اعشاری در اسمبلی
    نوشته شده توسط miracle در بخش برنامه نویسی اسمبلی خانواده x86
    پاسخ: 14
    آخرین پست: دوشنبه 04 دی 1385, 00:46 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •