محاسبات چندتایی
تابع calc را به گونهای پیادهسازی کنید که یک لیست از اعداد را بهعنوان ورودی دریافت کند و یک سهتایی را بهعنوان خروجی برگرداند. این سهتایی شامل موارد زیر است:
- میانگین: میانگین مقادیر موجود در لیست ورودی.
- میانه: میانهی مقادیر موجود در لیست ورودی.
- بیشینه: بزرگترین مقدار موجود در لیست ورودی.
میانه (Median)
میانه (Median)، مقدار وسط در یک مجموعه دادهی مرتبشده است. برای محاسبهی میانه:
- ابتدا لیست اعداد ورودی را بهصورت صعودی مرتب کنید.
- اگر تعداد اعداد فرد باشد، میانه، عدد وسط لیست مرتبشده خواهد بود.
- اگر تعداد اعداد زوج باشد، میانه، میانگین دو عدد وسط لیست مرتبشده خواهد بود.
برای کسب اطلاعات بیشتر درمورد میانه میتوانید به صفحهی ویکیپدیای میانه مراجعه کنید.
نوع دادهی خروجی
هر سه مقدار خروجی (میانگین، میانه و بیشینه) باید از نوع دادهی عددی باشند (مانند float یا int). همچنین تضمین میشود که تمامی اعضای لیست ورودی از نوع int هستند.
🎯 نمونه
ورودی و خروجی ۱
>>> calc([2, 20])
(11.0, 11.0, 20)
میانگین: (۲ + ۲۰) / ۲ = ۱۱.۰ میانه: (۲ + ۲۰) / ۲ = ۱۱.۰ (چون تعداد اعضا زوج است) بیشینه: ۲۰
ورودی و خروجی ۲
>>> calc([2, 20, 30, 29])
(20.25, 24.5, 30)
میانگین: (۲ + ۲۰ + ۳۰ + ۲۹) / ۴ = ۸۱ / ۴ = ۲۰.۲۵ میانه: مرتبشده = [۲, ۲۰, ۲۹, ۳۰] ← (۲۰ + ۲۹) / ۲ = ۲۴.۵ بیشینه: ۳۰
💡 راهنمایی
برای پیادهسازی تابع calc، میتوانید از مراحل زیر استفاده کنید:
- لیست ورودی را مرتب کنید.
- میانگین را با استفاده از
sum()وlen()محاسبه کنید. - میانه را بر اساس تعداد اعضا محاسبه کنید.
- بیشینه را با استفاده از
max()محاسبه کنید. - سه مقدار را در یک سهتایی برگردانید.
def calc(numbers):
sorted_numbers = sorted(numbers)
n = len(sorted_numbers)
# میانگین
mean = sum(sorted_numbers) / n
# میانه
if n % 2 == 1:
median = sorted_numbers[n // 2]
else:
median = (sorted_numbers[n // 2 - 1] + sorted_numbers[n // 2]) / 2
# بیشینه
maximum = max(sorted_numbers)
return (mean, median, maximum)
- برای محاسبهی میانه در لیستهای زوج، دو عدد وسط را با هم جمع کرده و بر ۲ تقسیم کنید.
- میانگین باید از نوع
floatباشد، پس از تقسیم معمولی (/) استفاده کنید.- بیشینه را میتوانید با
max()یا با اندیسگذاری بعد از مرتبسازی محاسبه کنید.- خروجی تابع باید یک سهتایی باشد، نه لیست.
- در این تمرین، نیازی به دریافت ورودی از کاربر یا چاپ خروجی در کنسول ندارید.
- شما فقط باید تابع
calcرا پیادهسازی کنید.- ورودی تابع از طریق آرگومانهای آن دریافت میشود و خروجی تابع باید از طریق دستور
returnبرگردانده شود.- نیازی به فراخوانی تابع در کد ارسالی نیست. سیستم بهطور خودکار تابع شما را با ورودیهای مختلف تست خواهد کرد.
✅ این تمرین را در ویرایشگر خود پیادهسازی کنید. به یاد داشته باشید که تابع باید یک سهتایی برگرداند و از
returnاستفاده کند.
نمونهها
calc([2, 20])
(11.0, 11.0, 20)
calc([2, 20, 30, 29])
(20.25, 24.5, 30)
برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.
ورود