رفتن به محتوای اصلی
نسخه‌ی آزمایشی · Beta

برنامه‌نویسیایستگاه ۱۶ از ۳۰

رشته‌ها و پردازش متن · برنامه‌نویسی، ایستگاه ۱۶

پرسشی که ایستگاه با آن شروع می‌شود

تصحیح خودکار گوشی چطور می‌فهمد منظورت کدام کلمه بود؟

معمولاً پایهٔ هفتمحدود ۱۰۱ دقیقه در ۴ جلسهٔ کوتاه

سرعت را تسلط تعیین می‌کند، نه سن.

فرزندتان در این ایستگاه چه یاد می‌گیرد

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

درس‌های این ایستگاه

  1. رشته: ردیفی از کاراکترها (حدود ۲۴ دقیقه)
  2. برش و جستجو (حدود ۲۵ دقیقه)
  3. پالیندروم (حدود ۲۵ دقیقه)
  4. شمارشِ حروف و تصحیحِ خودکار (حدود ۲۷ دقیقه)

ایده‌های کلیدی

  • برش و جستجو

    s[a:b] از a تا پیش از b است و طولش ⁦b − a⁩. جستجوی الگوی p یعنی ⁦len(s) − len(p) + ۱⁩ شروع را بسنجی. find اگر نیابد ⁦−۱⁩ می‌دهد و count روی‌هم‌افتاده‌ها را نمی‌شمارد.
  • ۲۶ شمارنده

    c = [0] * 26 و abc.find(ch) حرف‌ها را می‌شمارند. هم‌حروف یعنی همه‌ی شمارنده‌ها برابر. اختلافِ دو کلمه‌ی هم‌طول یعنی خانه‌هایی که فرق دارند؛ تصحیحِ خودکار نزدیک‌ترین را پیشنهاد می‌دهد.

از درس‌های همین ایستگاه

یک مثال حل‌شده

همان‌طور که در درس دیده می‌شود، این‌جا با همهٔ قدم‌ها.
مثال حل‌شدهاز درس «شمارشِ حروف و تصحیحِ خودکار»

مسئله

دو کلمه «هم‌حروف»اند اگر همان حرف‌ها را به همان تعداد داشته باشند، فقط با ترتیبِ دیگر؛ مثلِ below و elbow. آیا earth و heart هم‌حروف‌اند؟ apple و paper چطور؟ با شمارندهٔ حرف‌ها فکر کن.

راه‌حل، قدم‌به‌قدم

در درس، قدم‌ها یکی‌یکی باز می‌شوند و فرزندتان پیش از هر قدم خودش حدس می‌زند.

  1. قدم ۱:
    اول یک وارسیِ سریع: اگر طولِ دو کلمه فرق کند، حتماً هم‌حروف نیستند. len("earth") و len("heart") هر دو ۵اند؛ پس باید دقیق‌تر نگاه کنیم.
  2. قدم ۲:
    برای هر کلمه شمارنده‌ها را پر می‌کنیم. earth: e، a، r، t و h هر کدام یک بار. heart: h، e، a، r و t هر کدام یک بار. دو لیستِ شمارنده خانه‌به‌خانه برابرند.
  3. قدم ۳:
    پس earth و heart هم‌حروف‌اند. در پایتون کافی است دو لیستِ شمارنده را با == مقایسه کنیم؛ == دو لیست را خانه‌به‌خانه می‌سنجد.
  4. قدم ۴:
    apple و paper: طولِ هر دو ۵ است. ولی apple یک l دارد و هیچ r، و paper یک r دارد و هیچ l. شمارنده‌های l و r فرق دارند، پس هم‌حروف نیستند.
  5. قدم ۵:
    نوبتِ تو، اول خودت: inch و chin هم‌حروف‌اند؟ جواب بده، بعد قدمِ بعد را باز کن.
  6. قدم ۶:
    بله: هر دو یک i، یک n، یک c و یک h دارند. شمردن از امتحانِ همهٔ ترتیب‌ها بهتر است: یک کلمهٔ ۴ حرفی با حرف‌های متفاوت ۲۴ ترتیب دارد، ولی شمردن برای هر کلمه فقط ۴ قدم است. برای یک کلمهٔ ۸ حرفی با حرف‌های متفاوت، ترتیب‌ها ۴۰٬۳۲۰ تا می‌شوند ولی شمردن هنوز ۸ قدم است.

پیش‌نیازها

ایستگاه‌هایی که به این تکیه می‌کنند

  • هوش مصنوعی،ایستگاه ۱۷: یک مدل زبانی کوچک در پایتون

روش یادگیری فکرستان و همهٔ ایستگاه‌های این مسیر: برنامه‌نویسی برای کودکان

شروع با فکرستان

حساب را پدر یا مادر می‌سازد و رضایتش را همان‌جا ثبت می‌کند. فرزندتان با نام مستعار وارد می‌شود و با چند پرسش کوتاه، نقطهٔ شروعِ هر مسیر پیدا می‌شود.