تمرین سری دوم
تاریخ تحویل تمرین 3آبان 1392
درس مبانی برنامهسازی
CE153
Sharif University of Technology
Fall 2013
1
توضیحات اولیه
آخرین مهلت تحویل تمرین ،ساعت 23:59دقیقه روز جمعه ،سوم آبان ماه می
باشد.
بعد از اتمام زمان ارسال ،تا 3روز می توانید تمرین های خود را با تاخیر ارسال
نمایید .به ازای هر ساعت تاخیر 1%از نمره ی شما کسر می شود.
خروجی تمرین ها فقط موارد خواسته شده باشد.
2
توضیحات اولیه ...
برای
فرستادن
تمرین
ها
از
سامانه
داوری
شریف
(به
آدرس
) http://judge.ce.sharif.ir/92-93-1/ce153-1-2استفاده شده است.
طی هفته ی آینده ایمیلی برای شما ارسال خواهد شد که در آن نام کاربری و رمز
عبورتان اعالم می شود .سپس شما باید با استفاده از این اطالعات وارد سامانه ی داوری
شریف شوید و تمرین خود را آپلود کنید.
فراموش نکنید حتماً بعد از اولین ورود رمزعبور خود را تغییر دهید.
در صورت هرگونه مشکل در خصوص تمرین ،سواالت خود را در پیازا مطرح کنید.
3
سوال اول
نیما می خواهد بداند در چه روزی از هفته (شنبه ،یک شنبه )... ،اتفاقات مهم
آینده (مثل خط مرگ تمرین ها یا بازی های استقالل) اتفاق خواهد افتاد و
یا در گذشته اتفاق افتاده است .برنامه ای بنویسید که به او کمک کند این
محاسبه را انجام دهد .این کار با دادن یک تاریخ که روز آن معین است (مثال
تاریخ امروز و سپس اینکه امروز چند شنبه است) و یک سال که می دانیم
کبیسه است انجام می گیرد
تاریخ ها بر حسب میالدی است .تعداد روزهای ماه های میالدی را می توانید
از تقویم ویندوز پیدا کنید .تفاوت سال های کبیسه ی میالدی را در اینترنت
پیدا کنید.
4
سوال اول
ورودی :در خط اول 4ورودی داریم که به ترتیب :سال ،ماه ،روز و یک
عدد بین 0تا 6است که معین می کند این تاریخ معین چند شنبه است
است)
جمعه
معادل
6
و
شنبه
معادل
(0
در خط دوم یک سال که می دانیم کبیسه است وارد می شود
در خط سوم 3عدد که به ترتیب سال ماه و روز مجهول است
خروجی :بعد از محاسبه ی اینکه روز مجهول چند شنبه است ،یکی از
حاالت زیر را در خروجی چاپ می کنیم :
}{shanbe,1shanbe,2shanbe,3shanbe,4shanbe,5shanbe,jom’e
5
سوال اول
ورودی نمونه:
ورودی نمونه
خروجی نمونه
2013 10 15 3
2012
2013 10 13
1shanbe
6
سوال دوم
تابع 𝑛 𝑓 به این صورت تعریف می شود:
کم ارزش ترین رقم ناصفر عدد !𝑛
در نظر داشته باشید که !𝑛 عددی طبیعی است.
n! = n * (n-1) * … * 2 * 1
محدودیت ها :
0 ≤n ≤65536
ورودی و خروجی:
در تنها خط ورودی 3عدد a b cآمده است .در تنها خط خروجی باید
) f(a) f(b) f(cچاپ شود.
7
سوال دوم
نمونه ی ورودی و خروجی
ورودی نمونه
خروجی نمونه
10 11 12
886
در مثال باال داریم
10! =3628800
11! = 39916800
12! = 479001600
8
سوال سوم
برنامه ای بنویسید که در ابتدا یک عدد nاز کاربر بگیرد ،سپس nعدد
دریافت کند و به ازای آنها نتیجه ی محاسبه ی فرمول زیر را چاپ کند.
در صورتی که جواب از 7+109بزرگتر بود ،باقیمانده ی محاسبه ی جواب
بر 7+109را چاپ کند.
) ∑aiaj(i≠j
محدودیت ها :
همه ی اعداد کوچکتر از 7+109هستند.
1 ≤n ≤1000000
ورودی و خروجی
در خط اول ابتدا یک عدد nآمده سپس در خط بعدی nعدد می آیند
که با یک فاصله از هم جدا شده اند
9
سوال سوم
نمونه ی ورودی و خروجی
ورودی نمونه
خروجی نمونه
3
321
22
5
33333
180
در مثال باال داریم
1×2+1×3+2×1+2×3+3×1+3×2=22
10
سوال چهارم
برنامه ای بنویسید که ابتدا یک عدد aو عدد bرا از کاربر بگیرد و بگوید
که عدد aدر مبنای bآینه ای هست یا خیر .یک عدد آینه ای است اگر
از هر دو طرف مثل هم خوانده شود .مثال عدد 11011آینه ای هست ،
اما اعداد 110و 314آینه ای نیستند.
محدودیت ها:
10≤ b ≤2
7+109 ≤ a ≤ 1
ورودی و خروجی
در خط اول ورودی دو عدد آمده است که با یک فاصله از هم جدا شده
اند.
در خروجی یکی از دو رشته ی Yesیا Noرا چاپ کنید ( .به بزرگی و
کوچکی حروف دقت کنید).
11
سوال چهارم
ورودی و خروجی نمونه
ورودی
خروجی
72
Yes
12 2
No
90 9
Yes
81 9
No
در مثال های زیر داریم
(1100)2=12 , (111)2=7 , (11)9=90 , (10)9=81
12
© Copyright 2025 Paperzz