FP (02 03) 1st Midterm 2
FP (02 03) 1st Midterm 2
نکات مهم:
در طول امتحان اجازه ی استفاده از هیچ منبعی برای پاسخگویی به سواالت نمی باشد .در صورت تشخیص هرگونه تقلب،
برخورد قانونی صورت خواهد گرفت.
ساختار ورودی و خروجی حتما بایستی مطابق صورت سوال باشد.
در پارامتر ورودی تابع inputهیچ مقداری قرار ندهید.
در این آزمون تنها مجاز به استفاده از دستوراتی می باشید که در کالس تدریس شده اند .از تابع تعریفی خودتان و
لیست و اندیس دهی چه برای رشته و چه لیست نمی توانید استفاده کنید ولی بر روی عناصر رشته با حلقه ی
forمی توانید حرکت داشته باشید .
نمره ای که در طول امتحان کسب می کنید لزوما نمره ی نهایی شما نمی باشد .در طول امتحان ،برنامه ی شما فقط بر
روی نمونه های صورت سوال تست می شود .برنامه ی شما بایستی برای تمام ورودی های ممکن و صحیح برنامه ،خروجی
درستی تولید کند تا نمره ی کامل را بتوانید کسب کنید (می توانید از درستی ورودی های مسئله مطمئن باشید و نیازی
به چک کردن درستی ورودی توسط شما نمی باشد) .در زمان تصحیح سواالت ،داده های جدیدی اضافه خواهد شد تا
درستی برنامه های شما بطور کامل بررسی گردد .بنابراین حتما درستی برنامه ی خود را حتی با گرفتن نمره ی کامل در
طول امتحان بررسی نمایید.
موفق باشید
کشت کاران
مدت زمان آزمون 3ساعت میان ترم دوم درس مبانی کامپیوتر و برنامه نویسی
1 – PrimePrime
در این سوال تعداد اعداد اولی در بازه ی مورد نظر از شما خواسته شده است که مجموع ارقامشان نیز اول باشد .به عنوان مثال عدد
23خودش اول و مجموع ارقامش یعنی 5نیز اول است.
ورودی
در دو سطر مجزا ،دو عدد صحیح مثبت aو bشروع و پایان بازه را مشخص می کنند که خودشان را نیز در بازه بایستی در نظر
بگیرید.
خروجی
در خروجی تعداد اعداد موجود در بازه که اول بوده و مجموع ارقامشان نیز اول می باشد را گزارش کنید.
نمونه ی ورودی و خروجی
نمونه ورودی 1 نمونه خروجی 1
1 4
10
2 – Factors
= 300 تعداد عامل های یک عدد را عامل های اول آن همراه با تکرارشان در نظر بگیرید .به عنوان مثال تعداد عامل های اول عدد
2 × 2 × 3 × 5 × 5را 5در نظر می گیریم و مجموع عامل های اولش 17می شود.
کوچکترین عددی را پیدا کنید که تعداد kعامل اول داشته باشد که مجموعشان برابر nباشد .در ورودی تضمین می شود که چنین
عددی وجود داشته باشد و مقدارش نیز حداکثر 107باشد.
ورودی
در دو خط ورودی به ترتیب تعداد عامل های اول و عدد مورد که هر دو مقادیر مثبتی دارند داده می شود.
خروجی
در تنها خط خروجی ،کوچک ترین عددی که خاصیت مورد نظر را داشته باشد نشان دهید.
نمونه ی ورودی و خروجی
نمونه ورودی 1 نمونه خروجی 1
3 12
7
3 - SameBase
کوچکترین عددی را پیدا کنید که سمت راست آن در دو مبنای aو bداده شده که بزرگ تر مساوی 2و کوچکتر مساوی 9می
باشند برابر با عدد داده شده باشد .به عنون مثال عدد 25کوچک ترین عددی می باشد که در مبنای 3و 4سمت راست آن عدد
21قرار می گیرد.
ورودی
در سه خط به ترتیب مبنای ،aمبنای bو عدد مورد نظر در سمت راست که تضمین می شود رقم های آن از aو یا bبیشتر نمی
باشند داده می شود .تضمین می شود که جواب داشته باشیم و جواب کوچک تر مساوی 107باشد.
خروجی
کوچکترین عددی که چنین خاصیتی دارد را گزارش کنید.
نمونه ی ورودی و خروجی
نمونه ورودی 1 نمونه خروجی 1
3 25
4
21
4 – MaxDigit
کوچک ترین مضربی از عدد nرا پیدا کنید که بزرگ ترین رقم موجود در آن حداکثر به مقدار رقم dداده شده باشد .به عنوان مثال
اگر nبرابر 25باشد بزرگ ترین رقم آن 5می باشد .اگر 50را در نظر بگیریم همچنان بزرگ ترین رقمش 5می باشد .ولی 100
بزرگ ترین رقمش 1می باشد .بنابراین کوچکترین مضربی از 25که بزرگ ترین رقمش حداکثر 5باشد ،خودش می شود و
کوچکترین مضربی از 25که بزرگ ترین رقمش حداکثر 1باشد ،عدد 100خواهد بود .ورودی ها به نحوی داده می شود که اگر عدد
مورد نظر 𝑛 × 𝑘 باشد ،عدد kکوچک تر مساوی 107باشد .ضمنا ورودی به نحوی داده می شود که حتما چنین عددی وجود داشته
باشد.
ورودی
در خط اول ورودی عدد صحیح مثبتی ) (nبه شما داده می شود .در خط دوم ورودی بزرگ ترین رقم مورد نظر ) (dبه شما داده می
شود.
خروجی
در تنها خط خروجی کوچک ترین مضربی از عدد nرا پیدا کنید که بزرگ ترین رقم موجود در آن حداکثر به مقدار رقم dداده شده
باشد.
نمونه ی ورودی و خروجی
نمونه ورودی 1 نمونه خروجی 1
25 100
1