درس ۱ · صفحهٔ ۱۱۸ تا ۱۲۷ · حدود ۱۵ دقیقه · تولید هوش مصنوعی
درس اول: شمارش
در این درس یاد میگیری با تشخیص انتخابهای جایگزین و مرحلههای یک کار، از اصل جمع و اصل ضرب برای شمارش حالتها، ساخت عدد و رمز و حل مسئلههای دارای محدودیت استفاده کنی.
پیش از شروع
چرا انتخاب «یک خوراکی یا یک نوشیدنی» با انتخاب «یک خوراکی و یک نوشیدنی» تعداد حالتهای متفاوتی دارد؟
در انتخاب اول، فقط یکی از دو دسته را انتخاب میکنی؛ پس تعداد گزینههای دو دسته با هم جمع میشود. در انتخاب دوم، هر خوراکی میتواند با هر نوشیدنی همراه شود؛ پس تعداد گزینههای دو دسته در هم ضرب میشود.
یکی از راهها: اصل جمع
یکی از راهها: اصل جمع
فرض کن میخواهی برای دوستت هدیه بخری: یا یک کتاب، یا یک بازی؛ قرار نیست از هر دو گروه خرید کنی. چطور بدون نوشتن فهرست همهٔ هدیهها، تعداد انتخابها را پیدا میکنی؟
هر کتاب یک انتخاب است و هر بازی هم یک انتخاب دیگر. پس کافی است تعداد کتابهای قابل انتخاب را با تعداد بازیهای قابل انتخاب جمع کنی. این همان اصل جمع است: اگر یک روش انتخاب و روش دیگر انتخاب داشته باشد، تعداد کل انتخابها برابر است با:
دو نکته را همیشه بررسی کن: در پایان فقط یکی از روشها انجام میشود و روشها حالت مشترک ندارند؛ یعنی هیچ انتخابی در هر دو گروه شمرده نمیشود. اگر یک انتخاب در هر دو فهرست باشد، جمعکردن ساده آن را دوبار میشمارد.
این اصل برای بیش از دو گروه هم کاربرد دارد؛ به شرط رعایت همین نکتهها، تعداد انتخابهای همهٔ گروهها را جمع میکنیم.
کتاب درسی، صفحهٔ ۱۲۰
همهٔ مرحلهها: اصل ضرب
همهٔ مرحلهها: اصل ضرب
فرض کن برای بیرون رفتن باید هم یک پیراهن انتخاب کنی و هم یک شلوار. اینجا انتخاب پیراهن بهتنهایی کار را تمام نمیکند؛ هر دو مرحله باید انجام شوند.
اگر پیراهن و شلوار داشته باشی و هر پیراهن را بتوانی با هر دو شلوار بپوشی، برای هر انتخاب پیراهن، انتخاب شلوار داری. پس تعداد ترکیبهای لباس برابر است با:
این همان اصل ضرب است: اگر مرحلهٔ اول راه داشته باشد و برای هر انتخاب آن، مرحلهٔ دوم راه داشته باشد، کل کار راه دارد.
نکتهٔ مهم این است که تعداد راههای مرحلهٔ دوم برای هر انتخاب مرحلهٔ اول همان باشد؛ لازم نیست خود گزینهها یکسان باشند. برای کارهای چندمرحلهای هم همین قاعده ادامه پیدا میکند: تعداد راههای همهٔ مرحلهها را در هم ضرب میکنیم، به شرط آنکه این شرط در هر مرحله برقرار باشد.
کتاب درسی، صفحهٔ ۱۲۰
جمع و ضرب در کنار هم
جمع و ضرب در کنار هم
گاهی یک مسئله هم انتخاب بین چند روش دارد و هم درون هر روش، چند مرحله. در این حالت، لازم نیست فقط یکی از اصلهای جمع یا ضرب را انتخاب کنی؛ هر کدام در جای خودش به کار میآید.
فرض کن برای رفتن به شهری، یا با خودرو از یک شهر میانی عبور میکنی، یا با قطار مستقیم میروی. در روش خودرو، باید هم مسیرِ رسیدن به شهر میانی و هم مسیرِ ادامهٔ سفر را انتخاب کنی؛ پس تعداد حالتهای این روش با ضرب به دست میآید. در روش قطار، هر قطار مستقیم یک انتخاب است.
حالا چون در یک سفر فقط یکی از این دو روش را انجام میدهی و حالت مشترکی هم ندارند، تعداد حالتهای خودرو و قطار را با جمع ترکیب میکنی.
پس راهنما این است: داخل هر روش، مرحلهها را بشمار؛ سپس تعداد حالتهای روشهای جدا را جمع کن. صرفِ دیدن واژهٔ «یا» یا «و» کافی نیست؛ باید ببینی یک انتخاب کامل شامل چه کارهایی است.
کتاب درسی، صفحهٔ ۱۲۱
جایگاهها و محدودیتها
جایگاهها و محدودیتها
برای شمردن عددها و رمزها، بهجای نوشتن همهٔ حالتها، پرکردن هر جایگاه را یک مرحله در نظر بگیر. مثلاً ساختن یک عدد سهرقمی یعنی انتخاب رقم صدگان، دهگان و یکان.
پیش از شمردن گزینههای هر جایگاه، محدودیتها را بررسی کن:
- آیا تکرار مجاز است؟ اگر بله، رقم انتخابشده همچنان برای جایگاه بعد در دسترس است؛ اگر نه، باید آن را از گزینههای بعدی کنار بگذاری.
- آیا صفر میتواند اول بیاید؟ در عدد سهرقمی، صدگان نمیتواند صفر باشد؛ اما رمز ممکن است با صفر شروع شود، مگر اینکه خلافش گفته شده باشد.
- آیا عدد باید زوج یا فرد باشد؟ این شرط، گزینههای یکان را محدود میکند؛ پس بهتر است اول به یکان توجه کنی.
مثل ساختن رمز گوشی، مهم است بدانی چه چیزهایی اجازه دارند در هر خانه قرار بگیرند. بعد از تعیین تعداد گزینههای مجاز، از اصل ضرب استفاده میکنی.
کتاب درسی، صفحهٔ ۱۲۲
چه وقت حالتبندی کنیم؟
چه وقت حالتبندی کنیم؟
گاهی نمیتوان برای هر جایگاه، یک تعداد انتخاب ثابت نوشت؛ چون انتخاب یک رقم، تعداد گزینههای جایگاه دیگر را تغییر میدهد. در این موقع، حالتبندی کمک میکند.
فرض کن میخواهیم با رقمهای عدد سهرقمیِ زوج و بدون تکرار بسازیم. بهتر است اول سراغ یکان برویم، چون زوجبودن به آن بستگی دارد:
- یکان صفر باشد: صفر دیگر در دسترس نیست و هر رقم باقیمانده میتواند در صدگان بیاید.
- یکان دو باشد: صفر هنوز در دسترس است، اما نمیتواند در صدگان قرار بگیرد؛ پس تعداد گزینههای صدگان با حالت قبلی فرق دارد.
بنابراین این دو حالت را جدا میشماریم. درون هر حالت، از اصل ضرب استفاده میکنیم و در پایان، نتیجهها را جمع میکنیم.
حالتبندیِ درست دو شرط دارد: همهٔ حالتهای مجاز را پوشش دهد و هیچ نتیجهای در دو حالت شمرده نشود. اینجا هر عدد زوج دقیقاً در یکی از دو گروهِ «یکان صفر» یا «یکان دو» قرار میگیرد.
کتاب درسی، صفحهٔ ۱۲۴
مثال حلشده
با رقمهای چند عدد سهرقمیِ زوج و بدون تکرار میتوان ساخت؟
چون عدد باید زوج باشد، رقم یکان فقط میتواند ، یا باشد. این سه حالت، جدا و بدون همپوشانیاند.
اگر یکان باشد، برای صدگان انتخاب و سپس برای دهگان انتخاب داریم؛ پس تعداد این حالتها است.
اگر یکان باشد، صدگان فقط میتواند یا باشد. پس از انتخاب صدگان، دهگان از میان دو رقم باقیمانده انتخاب میشود؛ بنابراین حالت داریم.
اگر یکان باشد، صدگان فقط میتواند یا باشد و برای دهگان دو رقم باقی میماند؛ پس این حالت هم انتخاب دارد.
عددهای سه حالت متفاوتاند؛ بنابراین با اصل جمع، تعداد کل برابر است با .
نکات مهم
- وقتی فقط یکی از چند روشِ بدون حالت مشترک انجام میشود، تعداد حالتهای آن روشها را با اصل جمع به دست میآوریم.
- وقتی همهٔ مرحلهها باید انجام شوند و تعداد انتخابهای هر مرحله برای انتخابهای قبلی ثابت است، تعداد راههای مرحلهها را در هم ضرب میکنیم.
- در ساخت عدد و رمز، محدودیتهای صفر، تکرار و زوجوفردبودن را بررسی میکنیم و اگر لازم باشد، حالتهای جداگانه میسازیم.