پروژه: بازی حدس عدد

بازی حدس با while، شرط‌ها و راهنمایی گرم/سرد.

پروژه ۲: بازی حدس عدد 🎯

کد کامل

sub temperature {
  my ($guess, $secret) = @_;
  my $diff = abs($guess - $secret);
  return "درست! 🎉" if $diff == 0;
  return "🔥 آتش!" if $diff <= 3;
  return "🌡 گرم" if $diff <= 10;
  return "😐 ولرم" if $diff <= 25;
  return "❄ سرد";
}

# شبیه‌سازی بازیکن
my $secret = 42;
my @guesses = (70, 35, 50, 44, 42);
my $tries = 0;
my $won = 0;

foreach my $guess (@guesses) {
  $tries++;
  my $feedback = temperature($guess, $secret);
  say "تلاش $tries: $guess → $feedback";
  if ($guess == $secret) {
    $won = 1;
    last;      { برد! }
  }
  say "  راهنما: " . ($guess > $secret ? "کمتر برو ⬇" : "بیشتر برو ⬆");
}

if ($won) {
  say "🏆 بردی با $tries تلاش!";
} else {
  say "😄 باختی! عدد $secret بود.";
}

مفاهیم به‌کاررفته

مفهومکجا؟
sub با برگشت رشتهtemperature
absفاصله از عدد مخفی
lastتوقف بعد از برد
سه‌تایی ?:راهنمای بیشتر/کمتر

چالش‌های تکمیلی

  1. محدودیت تلاش (مثلاً ۷ بار)
  2. سطح دشواری: محدوده ۵۰/۱۰۰/۵۰۰
  3. آمار بازی: بهترین رکورد

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

ابزارهای مرتبط