بکندباز

یک تابع بنویسید که یک آرایه را به آرایه‌ای از تفاوت‌های عناصر متوالی تبدیل کند و این فرآیند را تکرار کند تا تنها یک عنصر باقی بماند. هر تفاوت به‌صورت A[n+1] - A[n] تعریف می‌شود.

توضیح مثال:

[5, 1, 9, 3, 4, 0]

[-4, 8, -6, 1, -4]
# 1 - 5 = -4;
# 9 - 1 = 8;
# 3 - 9 = -6;
# etc.

[12, -14, 7, -5]

[-26, 21, -12]

[47, -33]

-80 

نمونه ورودی و خروجی

n_differences([5, 1, 9, 3, 4, 0]) ➞ -80

n_differences([1, 1, 1, 1]) ➞ 0

n_differences([5, 8, 8]) ➞ -3

نکات:

  • هر آرایه ورودی حداقل دو عنصر دارد.
  • تابع باید تا زمانی که فقط یک عنصر باقی بماند، فرآیند را ادامه دهد و آن عنصر نهایی را برگرداند.
self.assertEqual(n_differences([5, 1, 9, 3, 4, 0]), -80)
self.assertEqual(n_differences([1, 1, 1, 1]), 0)
self.assertEqual(n_differences([5, 8, 8]), -3)
self.assertEqual(n_differences([5, 9, 7, 3]), 4)
self.assertEqual(n_differences([1, 5, 3, 9, 7]), -30)
self.assertEqual(n_differences([4, 0, 0, 0, 1]), 5)

پاسخ های کاربران به این تمرین

Arhsi8294
امتیاز:‌ 3666
تصحیح اتوماتیک 0 0
‎پایتون‎
23 آبان 1403

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

MarsBoy
امتیاز:‌ 3666
تصحیح اتوماتیک 0 0
‎پایتون‎
23 آبان 1403

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

Sa_shadow
امتیاز:‌ 3666
تصحیح اتوماتیک 0 0
‎پایتون‎
23 آبان 1403

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

mantix
امتیاز:‌ 3666
تصحیح اتوماتیک 0 0
‎پایتون‎
23 آبان 1403

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

نظرات

*
*

تمرینات مرتبط