آخرین بروزرسانی 1 ماه قبل

تقدم (Precedence) چیست؟

تقدم عملیات: چگونه کامپیوترها محاسبات را انجام می‌دهند؟

سلام دوستان!

تا حالا شده یه عبارت ریاضی رو به کامپیوتر بدید و نتیجه‌ای که می‌گیرید با چیزی که خودتون حساب کردید فرق کنه؟ این معمولا به خاطر "تقدم عملیات" هست. بذارید یه مثال ساده بزنیم: اگر بپرسید 2 + 3 * 4 نتیجه‌اش چیه، شاید بعضی‌ها بگن 20 (چون اول 2 رو با 3 جمع می‌کنن بعد در 4 ضرب می‌کنن). ولی کامپیوترها (و البته بیشتر ریاضی‌دان‌ها!) یه جور دیگه‌ای این رو حساب می‌کنن.

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

قوانین اصلی تقدم عملیات

اینجا یه لیست از مهمترین قوانین تقدم عملیات میاریم (از بالاترین اولویت به پایین‌ترین):

  1. پرانتزها: هر چیزی که داخل پرانتز باشه، اول از همه حساب میشه.
  2. توان و رادیکال: بعد از پرانتزها، توان‌ها و رادیکال‌ها محاسبه میشن.
  3. ضرب و تقسیم: بعد از توان‌ها و رادیکال‌ها، ضرب و تقسیم (به ترتیب از چپ به راست) انجام میشن.
  4. جمع و تفریق: در نهایت، جمع و تفریق (به ترتیب از چپ به راست) انجام میشن.

برای اینکه بهتر متوجه بشید، این جدول رو ببینید:

اولویت عملیات مثال
1 پرانتز (2 + 3) * 4 = 5 * 4 = 20
2 توان 2 ^ 3 = 8 (2 به توان 3)
3 ضرب و تقسیم 6 / 2 * 3 = 3 * 3 = 9 (از چپ به راست)
4 جمع و تفریق 5 - 2 + 1 = 3 + 1 = 4 (از چپ به راست)

برگردیم به مثال قبلی

حالا با توجه به این قوانین، می‌تونیم ببینیم که چرا 2 + 3 * 4 نتیجه‌اش 14 میشه، نه 20. چون اولویت با ضرب هست، پس اول 3 * 4 محاسبه میشه که میشه 12. بعدش 2 با 12 جمع میشه که میشه 14.

یه مثال دیگه

فرض کنید یه عبارت پیچیده‌تر داریم:

        (5 + 2) * 3 - 10 / 2 + 1
    

چطوری این رو حل کنیم؟ قدم به قدم:

  1. پرانتز: (5 + 2) میشه 7. پس عبارت میشه: 7 * 3 - 10 / 2 + 1
  2. ضرب و تقسیم: 7 * 3 میشه 21 و 10 / 2 میشه 5. پس عبارت میشه: 21 - 5 + 1
  3. جمع و تفریق: 21 - 5 میشه 16 و 16 + 1 میشه 17.

پس نتیجه‌ی این عبارت میشه 17.

چرا این قوانین مهم هستن؟

این قوانین فقط توی ریاضیات مهم نیستن! توی برنامه‌نویسی هم خیلی کاربرد دارن. وقتی یه برنامه مینویسید، کامپیوتر دقیقاً طبق همین قوانین محاسبات رو انجام میده. اگه تقدم عملیات رو درک نکنید، ممکنه برنامه‌هاتون درست کار نکنن و نتایج پیش‌بینی نشده‌ای به دست بیارید. خصوصا اگر با فرمول هایی کار دارید، یا محسابات مربوط به امور مالی را انجام می دهید.

مثال برنامه‌نویسی (خیلی ساده)

تصور کنید این کد رو داریم (فرقی نمیکنه به چه زبانی باشه، مهم مفهومشه):

        result = 2 + 3 * 4;
        print(result); // خروجی: 14
    

همونطور که می‌بینید، result میشه 14 چون ضرب اول انجام میشه. اگه می‌خواستیم اول جمع انجام بشه، باید از پرانتز استفاده می‌کردیم:

        result = (2 + 3) * 4;
        print(result); // خروجی: 20
    

این دفعه با پرانتزها، نتیجه تغییر کرد.

خلاصه

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

امیدوارم این آموزش براتون مفید بوده باشه. اگر سوالی داشتید، حتما بپرسید!

کلمات کلیدی:

تقدم عملیات، ترتیب انجام عملیات، ریاضیات، برنامه‌نویسی، پرانتز، ضرب، تقسیم، جمع، تفریق، توان، اولویت

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

به اشتراک گذاشتن این مطلب در شبکه های اجتماعی

امتیاز شما به این مطلب

امتیاز: 5 از 5 (مجموع 1 رای)

اولین نفری باشید که در مورد این مقاله نظر می دهید!

7648- V15
Terms & Conditions | Privacy Policy

techfeed.ir© 2024 All rights reserved