المپدیا

دانش‌نامه‌ی المپیاد کامپیوتر ایران

ابزار کاربر

ابزار سایت


سوالات المپیاد:دوره ی تابستان:دوره ی ۱۸:برنامه نویسی:سوال ۲

ماجرای کامبیز و مقدار کد اسکی‎ کاراکتر c

می‌خواهیم بدانیم کد اسکی کاراکتر ‎c‎ چند است.

الف) در خط اوّل تابع main برنامه‌ی روبه‌رو حداکثر ‎۱۷‎ کاراکتر بنویسید که مقدار کد اسکی کاراکتر c‎ را محاسبه و چاپ کند. دقت کنید که نوشتن عدد ‎۹۹ (به‌صورت مستقیم) مجاز نیست و برای نوشتن هم باید الزاماً از تابع ‎printf استفاده شود.

فقط همین حداکثر ‎۱۷‎ کاراکتر را در برگه‌ی پاسخ‌نامه بنویسید.

#include <cstdio>
int main() {
   /* < 20 characters here */
   return 0;
}

ب) کامبیز که از روش قسمت الف اطلاع ندارد، قطعه کد زیر را برای این منظور نوشته است. آیا این کد درست کار می‌کند؟

راهنمایی: کامبیز هم، مانند شما، می‌داند که char، یک نوع علامت‌دار ‎(Signed Type)‎ است.

#include <stdio>
int main() {
   int v = -1;
   for (char i=32; i<=127; i++)
      if (i == 'c')
         v = i; 
   printf("%d\n", v);
   return 0;
}

ابزار صفحه