لوگوی جشنواره وب و موبایل ایران

Calculator (2)

شاید باورش برای خیلی‌ها سخت باشد که مایکروسافت با تیم مهندسی قدرتمندش نیز می‌تواند در انجام یک محاسبه ساده خطا کند! مطمئناً از هر کاربری بپرسید حاصل عبارت ۲ منهای ۲ چند می‌شود به‌ سرعت عدد صفر را به شما اعلام کند، اما آیا می‌دانید مایکروسافت در انجام این محاسبه خطا دارد و در نسخه‌های مختلف ویندوز و ویندوز فون نیز این خطا متفاوت است؟ در این مطلب قصد داریم جزئیات این خطا را برای شما شرح دهیم. در ادامه با وینفون همراه باشید.

  • روی منوی استارت کلیک کرده و در کادر جست‌وجو عبارت Calculator را وارد کنید و ماشین‌حساب را اجرا کنید.
  • حالا کافی است عدد ۴ را وارد کرده و روی آیکون رادیکال کلیک کنید. (با اجرای این کار رادیکال ۴ محاسبه‌شده و مقدار ۲ در خروجی نمایش داده می‌شود)
  • حالا روی آیکون تفریق و در ادامه روی عدد ۲ کلیک کرده و نتیجه که برابر با ۲ است را منهای ۲ کنید.
  • پاسخ شما صفر نیست؟ جالب اینجاست درصورتی‌ که ماشین‌حساب را از حالت استاندارد به حالت مهندسی تغییر دهید و همین عملیات را تکرار کنید، بازهم نتیجه متفاوتی در اختیار شما خواهد گرفت.

البته این پاسخ اشتباه یک جواب منطقی دارد که کشف آن را به شما واگذار می‌کنیم. منتظر نظرات شما هستیم.

منبع : وینفون
13 پست
محمود اصلانی
🇮🇷 به امید آنکه هر ایرانی یک مهندس رایانه باشد 🇮🇷
مطالب مرتبط
دیدگاه کاربران
بارسا
💔 2 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

این خطای محاسبات ماشینه و خیلی ربطی به مایکروسافت نداره.
دلیل متفاوت بودن تو کامپیوتر های مختلف هم اینه که هر کامپیوتری کوچکترین عدد قابل نمایش متفاوتی می تونه داشته باشه. و این عدد که نمایش داده میشه در واقع مربوط به اون کوچکترین عدد هستش.

    mahdihmb
    💔 7 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

    مگه خط کشه که کوچکترین واحد شمارش ها متفاوت باشه؟! :)))))))))
    کوچکترین واحد تمام سیستم های دیجیتال ۱ بیت هست.
    این خطا هم به خاطر خطای محاسبات اعداد ممیز شناور هست (ولی مهندسان مایکروسافت شاید یتونن این جور خطا ها رو تا حد قابل قبولی رفع کنن)

      smomousavi
      💔 1 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

      دوست عزیز فرمودید ۱ بیت کوچکترین واحد محاسبات تمام سیستمهای دیجیتاله ؟؟؟؟؟؟؟؟؟؟؟؟؟/ میشه بگین بزرگترینش چیه ؟ اصلا شما بگو بیت چیه ؟

H@med
💔 3 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

منطق !؟ کشف !؟ شیب دار ؟! جنگل ؟!

Pfft
💔 2 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

Actually the result is -1.068281969439142e-19 which is scientific notation for -1.068281969439142 × ۱۰⁻ⁱ⁹ or -0.000000000000000000106828196944 (rounded to the thirtieth decimal place). This result is a cause of the way computers handle floating point decimals and the behaviour can be recreated with a variety of methods.
در رایانش، ممیز شناور به روشی گفته می‌شود که برای نمایش اعداد حقیقی به طوری که محدوده‌ای وسیع از مقادیر را بپذیرند، بکار می‌رود. اعداد عموماً به وسیلهٔ تعداد ثابتی رقم مهم نمایش داده می‌شوند و سپس به وسیلهٔ توان مقیاس می‌گیرند. پایهٔ توان معمولاً ۲، ۱۰ یا ۱۶ است. اعداد معمولی که می‌توان دقیق نمایش داد به شکل زیر هستند:
ارقام مهم × پایهتوان

آریا
💔 29 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

سلام دوستان ویندوز فونی . خواستم تشکر کنم از این سایت خوب. من دقیقا دو سال از ویندوزفون استفاده کردم تجربه عالی بود با لومیا ۱۵۲۰. الان هم برگشتم (احتمالا برای همیشه) به آی او اس با ۶اس پلاس (فوق العاده است) (بعضی از دوستان جو گیر نشین نمیخوام کسی رو ترغیب به ترک ویندوزفون کنم) ولی این اواخر کیفیت برنامه های ویندوزفون خیلی منو کلافه کرده بود.(بهترین و بالاترین کیفیت اپ ها رو آی او اس داره) امیدوارم هرچه زودتر اپ های ویندوز موبایل هم با کیفیت شن. از نویسندگان سایت هم خیلی ممنونم از مطالب خوبی که گذاشتن خیلی استفاده کردم.

    he8362
    💔 3 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

    عالی

    r0ss0neri
    💔 1 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

    منم اگه پول زیادی داشتم که بخوام گوشیمو عوض کنم درنگ نمیکردم :دی

      rsgomez
      💔 1 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

      آره والا منم اگه پول داشتم این ۶۳۰ رو میدادم یک نکسوس میگرفتم و در آرامش میزیستم هوففففففف

milad
💔 0 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

کشف آن را به ما واگذار میکنید؟
من دوتا جمع میخوام بزنم ماشین حساب رو صد بار چک میکنم اونوخ کشف معما میدین بهم؟ 😂

محمد
💔 1 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

۱.۰۶۸۲۸۱۹۶۹۴۳۹۱۴۲-

amirhossein
💔 0 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

جالبه
چون توی محاسبات رادیکال ۱۶ منهای ۴ هم همینطور جواب میده

امیرحسین
💔 2 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

این خطا بخاطر اینه که وقتی از عدد۴ جذر گرفته میشه، جواب حاصل از نوع ممیز اعشاری است و مثلا ۲.۰۰۰۱ است و وقتی این عدد از ۲ از نوع صحیح کسر میشود، مقدار اعشار آن باقی میماند. بخاطر همینه که جواب صفر مطلق نمیشه

    مهدی
    💔 0 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

    خوب جذر ۴ که اعشار نداره، ۲ است. اینو اول خودشم مینویسه.

      delpieroo
      💔 0 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

      شما بزن ۲+۰.۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۰۱ این رو هم میزنه ۲

Ha_D
💔 0 پاسخ دهید یکشنبه ۱۱ بهمن ۱۳۹۴

جالبیش اینه که حاصل تفریق رو به علاوه ۲ هم بکنی باز میشه ۲ !

محمدرضا
💔 0 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

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

سروش
💔 0 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

اگر به جای اینکه اینقدر به فکر دنیای بیخود اینترنت بودید و با گوشی تان ور میرفتید کمی ریاضیات خوانده بودید الان جواب این سوال گیج تان نمیکرد.
کار مایکروسافت و بقیه سیستم های عامل اشتباه نیست. اصلا محاسبات ماشین حساب ها را مایکروسافت و گوگل نمی نویسند که بخواهند اشتباه بسازند یا درست بسازند. آنها می نویسند دو منهای دو و سی پی یو آنرا حساب می کند. موضوع زیر سر ریاضیات است.
جواب سوال در ریاضیات اعداد موهومی است. یا همان اعداد گنگ. یا اصم.
رادیکال چهار و بقیه اعداد زوج دو جواب دارند یکی جوابی که عمومی است ولی با علامت مثبت، یکی هم همان عدد ولی با علامت منفی. مثلا رادیکال چهار دو جواب دارد: مثبت دو و منفی دو. هر کدام را که به توان ۲ برسانید جواب می شود چهار. بخش اعداد منفی در ریاضیات دنیای پیچیده و رمزآلودی است که هنوز خیلی از چیزهای آن کشف نشده. نتیجه این محاسبه هم به دلیل در نظر گرفتن این عدد منفی و البته دقت وحشتناک سی پی یو های سی دو و شصت و چهار بیتی در محاسبه ممیز شناور می شود این چیزی که شما انتظارش را نداشتید.
==> اینها را بی خیال، سوالی که خیلی سخت تر است و جوابش را هم هیچ کس نمی داند این است که ویندوز موبایل ۱۰ کی میاید؟ و آیا همان چیزی است که آرزویش را داشتیم یا …
🙁

    Rahim
    💔 0 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

    این موضوع ارتباطی به اعداد مختلط نداره. شمایی که به دیگران توهین میکنی و ادعا میکنی سرت تو ریاضیات بوده. اگر ریشه سوم ۸ و بگیری و منهای دو کنی بازم جواب عجیبی میگیریو
    این به ممیز شناور میتونه ارتباط داشته باشه.

ابی
💔 0 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

خب البته رادیکال ۴ در حالت درستش همزمان هم می تونه ۲ باشه و هم می تونه -۲ باشه چون هم ۲ و هم -۲ وقتی به توان ۲ می رسن جوابشون ۴ میشه. شاید به خاطر همینه که ماشین حساب ناخواسته گیج میشه!
همین آزمایش رو با رادیکال ۹ منهای ۳ انجام بدید. جوابش باز هم نادرست به نظر می رسه!
همینطور برای رادیکال ۱۶ منهای ۴ !!!

Muhammed Setmar
💔 0 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

به نظرم من ماشین حساب ها به جای محاسبه با روش های تحلیلی، با روش های عددی محاسبه را انجام میدن. تابع رادیکال محاسبات تحلیلی ای داره که همه ی ما توو راهنمایی خوندیمش. اما ماشین حساب با این روش رادیکال ۴ رو حساب نمیکنه که دقیقا ۲ رو نتیجه بده. بلکه با روش های عددی تا تکرار مورد نظر (که وابسته به دقت ماشین حساب است) مثلا میده ۲ و خورده ای با ۱۹ رقم اعشار

    Muhammed Setmar
    💔 0 پاسخ دهید دوشنبه ۱۲ بهمن ۱۳۹۴

    برای اطلاعات بیشتر در مورد روش های عددی میتونید روش نیوتن رافسون (نیوتن) رو در ویکی پدیا جستجو کنید. به عنوان مثال برای حل معادله درجه دوی x^2-4=0 میشه با x اولیه ی ۰ شروع به کار کرد و مشاهده کرد که هرچه تعداد تکرار ها بیشتر شود، به جواب نزدیک تر میشویم.

مهدی
💔 0 پاسخ دهید سه شنبه ۱۳ بهمن ۱۳۹۴

دوستان تا حد زیادی درست فرمودن. اصولا دو نوع برنامه محاسباتی ریاضی داریم.سمبلیک و نامریکال(عددی). در حالت اول نرم افزار(به طور مثال میپل) جواب جذر چهار رو دقیقا دو در نظر میگیره اما در نرم افزارهای عددی که ماشین حساب ویندوز از همین دسته است با یک تقریب نسبتا مناسبی جواب رو دو در نظر میگیره. اما مشکل جایی به وجود میاد که این خطا نشر ‍‍‍پیدا کنه مثلا در همین حالت که جواب نزدیک صفر بشه.

برای نوشتن دیدگاه می توانید به حساب کاربری خود وارد شوید ورود ارسال نظر به صورت مهمان
برچسب ها: , , , ,