حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
همهٔ تمرین‌ها

تابع میانگین تعداد بینهایت عدد

تمرین آسان 3754 visibility link download flag

تابعی بنویسید که تعداد بی نهایت پارامتر دریافت کند و میانگین اعداد را برگرداند

اگر پارامتری مقدار غیرعددی بود، آن را نادیده بگیرد

👨‍💻 1 ساعت قبل کاربر ناشناس این تمرین رو مشاهده کرد

پاسخ‌ها 52

def average(*numbers):
    total = 0
    count = 0
    for i in numbers:
        if type(i) == int or type(i) == float:
            total += i
            count += 1
    if count != 0:
        return total / count
    else:
        return 0.0
# tests:
print(average(10,20,30))                    # 20.0
print(average(10,"a",30))                   # 20.0
print(average("a","b"))                     # 0.0
print(average(7))                           # 7.0
print(average(0))                           # 0.0
print(average(0,10,20))                     # 10.0
print(average(1.5,2.5,6))                   # 3.3333333333333335
print(average("hello","python",True))       # 0.0
print(average(100,"x",0,50.5,"y",9.5))      # 40.0
def calculate_average(*args):
    # فیلتر کردن پارامترهای عددی
    numeric_values = [arg for arg in args if isinstance(arg, (int, float))]

    # محاسبه میانگین در صورتی که مقدار عددی وجود داشته باشد
    if numeric_values:
        return sum(numeric_values) / len(numeric_values)
    else:
        return 0  # در صورت نبودن هیچ مقدار عددی، میانگین صفر برگردانده می‌شود
def average():
    n = 0
    num_1 = 0
    while True:
        try:
            num = int(input("num: "))
            n = n + num
            num_1 = num_1 + 1
            print(f"average: {n / num_1}")
        except ValueError:
            "Enter the number"


pr = average()
print(pr)

numbers = 0
numbersadded = 0

while True:
    num = int(input("number: "))
    if num == 0:
        break
    numbersadded += 1
    numbers += num
def allnumber(*numberss):
    for number in numberss: 
        return number / numbersadded
print(allnumber(numbers))
def average():
    s = 0
    n = 0
    while True :
        e = input("\nyour number: \n")
        if e == "end":
            break

        try:
            s += int(e)
            n += 1
        except ValueError:
            print("Please enter only numbers or type 'end' to end.")

    return  s/n if n > 0 else 0
print(average())
def miangin ():
    s = 0
    n = 0

    while 1 :
        try:
            i = int(input('enter your number: '))
            s += i
            n += 1

        except :
            print('wrong number!')

        if i == '':
            pass
        elif i == 0:
            break
            print()
    return 'miangin mishe=' , s/(n-1)

print(miangin())
def average(*args):
    total = 0
    count = 0

    for value in args:
        if isinstance(value, (int, float)) and not isinstance(value, bool):
            total += value
            count += 1

    return total / count if count else 0

ارسال جواب

جوابت را با Markdown بنویس و ثبت کن

×
بستن