تابع میانگین تعداد بینهایت عدد
تابعی بنویسید که تعداد بی نهایت پارامتر دریافت کند و میانگین اعداد را برگرداند
اگر پارامتری مقدار غیرعددی بود، آن را نادیده بگیرد
👨💻 1 ساعت قبل کاربر ناشناس این تمرین رو مشاهده کرد
تابعی بنویسید که تعداد بی نهایت پارامتر دریافت کند و میانگین اعداد را برگرداند
اگر پارامتری مقدار غیرعددی بود، آن را نادیده بگیرد
```def average(*args):
total = 0
count = 0
for item in args:
if isinstance(item, (int,float)):
total += item
count += 1
if count == 0:
return 0
else:
return total / count
print(average(10, 20, "30" ,"Hallo"))
```
#حل مسئله با پارمتر بی نهایت#
def average_numbers(*args):
s = 0
d = 0
for itme in args:
for i in itme:
s += i
d += 1
return s / d
my_list = []
while True:
number = input("number: ")
if number == "": break
if number.isdigit():
num = int(number)
my_list.append(num)
else: continue
an = average_numbers(my_list)
print("The average is: ",an)
#حل مسئله با روش دیگر#
def average_numbers():
l = 0
i = 0
while True:
number = input("number: ")
if number == "":break
if number.isdigit():
num = int(number)
l += num
i += 1
else: continue
return l/ i
average = average_numbers()
print("The average is :", average)
def average(*args):
numbers = [x for x in args if isinstance(x, (int, float)) and not isinstance(x, bool)]
if not numbers:
return 0
return sum(numbers) / len(numbers)
# The average function of an infinite number of numbers
def average(*n):
total = 0
count = 0
for i in n:
try:
total += float(i)
count += 1
except:
continue
if count == 0:
return 0
return total / count
# test
print(average(32,29,44,69,76,9))
def average(*numbers):
total = 0
count = 0
for n in numbers:
if isinstance(n, (int, float)) and not isinstance(n, bool):
total += n
count += 1
if count == 0:
return 0
return total / count
print(average(5, "سلام", 15))
def ave(*a):
s=0
count=0
for i in a:
if isinstance(i, (int, float)):
s += i
count+=1
if count==0:
return 0
return s / count
res=ave(2,3,'*',[2,4],-1,2,5,5,5,5,'ali')
print(res)
s = 0
n = 0
while True:
a = input("number: ")
if not a.isdigit():
continue
a = int (a)
if a == 0:
break
s += a
n += 1
if n > 0:
print("avg: ", s/n)
def miyangin(*args):
number=[]
for i in args:
if isinstance(i,(float,int)):
number.append(i)
a=len(number)
b=sum(number)
c=b/a
return c
def average_of_numbers():
l=[]
while True:
try:
numbers=int(input('num:'))
except ValueError:
continue
if numbers==0:
break
else:
l.append(numbers)
d=sum(l)
print('for end enter 0')
print(d)
average_of_numbers()
def average(*args):
numbers = [x for x in args if isinstance(x, (int, float))]
return sum(numbers) / len(numbers) if numbers else 0
جوابت را با Markdown بنویس و ثبت کن
برای استفاده از این بخش باید وارد حساب کاربریت بشی
ورود/ثبت نامتوضیح کوتاهی بنویسید تا تیم بررسی کند.