خانه › انجمن ها › انجمن برنامه نویسی › انجمن برنامه نویسی پایتون › لیست اعداد
- این موضوع 1 پاسخ، 2 کاربر را دارد و آخرین بار در 11 ماه، 3 هفته پیش بدست ابوالفضل محمدی جو بهروزرسانی شده است.
-
نویسندهنوشتهها
-
-
اکتبر 15, 2023 در 2:06 ب.ظ #3048::
سجاد یک لیست n تایی از اعداد دارد و در گروههای مختلف آن را تقسیمبندی میکند؛ به این صورت که m عضو اول را در یگ گروه قرار میدهد، m عضو بعدی را در یک گروه و به همین ترتیب اعضا را گروه بندی میکند (دقت کنید که گروه آخر ممکن است کمتر از m عضو داشته باشد).
سجاد از روی این اعداد، یک لیست جدید میسازد که عضو i ام آن، جمع اعضای گروه i ام باشد.
او که به شطرنج علاقه خاصی دارد به صورت یکی در میان اعضای لیست جدید را از هم کم و زیاد میکند؛ به این معنا که از عضو اول لیست جدید، عضو دوم را کم میکند و سپس عضو سوم را اضافه میکند و از این مقدار عضو چهارم را کم میکند و این روند را ادامه میدهد تا به آخر لیست جدید برسد و سپس مقدار نهایی را به عنوان ارزش لیست در نظر میگیرد.
مثال محاسبه ارزش لیست
به طور مثال اگر سجاد لیست زیر را داشته باشد و مقدار m برابر با ۳ باشد:[1,2,3,4,5,6,7,8]
آنگاه لیست جدید به صورت زیر میشود:
[6,15,15]
بعد از آن سجاد اعداد لیست را به صورت شطرنجی جمع میکند و ارزش لیست برابر با عبارت زیر میشود:
6−15+15=6
بنابراین عدد نهایی سجاد برابر با ۶ میشود. همچنین اگر مقدار m در این سوال برابر با یک بود ارزش نهایی برابر با عبارت زیر میشود:
1−2+3−4+5−6+7−8=−4
در این سوال شما باید تابع calculator(n, m, li) را پیادهسازی کنید که به ترتیب n (تعداد اعضای لیست)، و m (تعداد اعضای هر گروه) و خود لیست را ورودی بگیرد و ارزش نهایی لیست را برگرداند. -
اکتبر 27, 2023 در 1:40 ب.ظ #3052::
` def calculator(n, m, li): print("Your list: ", li) for i in range(0, n//m): z1 = sum(li[0 + i*m : (i+1)*m]) x.append(z1) if n%m != 0: z2 = sum(li[(n//m)*m : ]) x.append(z2) print("list of summations: ", x) z3 = len(x) res = 0 for i in range(0, z3): res += ((-1)**i) * x[i] print("List's final value: ", res) flag = True while(flag): x = [] n = int(input("Enter n: ")) m = int(input("Enter m: ")) li = list(map(int, input("Enter your list numbers separated by space: ").split())) if n < 2: print("n (lenght of list) must be at least 2. Try again! ") flag = False elif m >= n: print("m must be less than n. Try again!") flag = False elif len(li) != n: print("Please enter exactly ", n, " elements for your list, separated by 1 space. Try again!") flag = False else: calculator(n, m, li) if flag == True: resp = input("Do you want to continue (Yes or No)?: ") if resp.upper() == "NO" or resp.upper() == "N": flag = False `
- این پاسخ 11 ماه، 3 هفته پیش توسط ابوالفضل محمدی جو اصلاح شده است.
-
-
نویسندهنوشتهها
- شما برای پاسخ به این موضوع باید وارد شوید.