кодесурса
«Python

Python: проверьте, что сумма трех элементов из трех массивов равна целевому значению

script1adsense2code
script1adsense3code

Python Basic - 1: Упражнение 11 с решением

Напишите программу на Python, чтобы проверить, что сумма трех элементов (каждый из массива) из трех массивов равна целевому значению. Распечатайте все эти комбинации из трех элементов.

Пример данных:
/ *
Х = [10, 20, 20, 20]
Y = [10, 20, 30, 40]
Z = [10, 30, 40, 20]
цель = 70
* /

Пример решения :

Код Python:

import itertools
from functools import partial
X = [10, 20, 20, 20]
Y = [10, 20, 30, 40]
Z = [10, 30, 40, 20]
T = 70
def check_sum_array(N, *nums):
  if sum(x for x in nums) == N:
    return (True, nums)
  else:
      return (False, nums)
pro = itertools.product(X,Y,Z)
func = partial(check_sum_array, T)
sums = list(itertools.starmap(func, pro))
result = set()
for s in sums:
    if s[0] == True and s[1] not in result:
      result.add(s[1])
      print(result)

Пример вывода:

 {(10, 20, 40)}
{(10, 20, 40), (10, 30, 30)}
{(10, 20, 40), (10, 30, 30), (10, 40, 20)}
{(10, 20, 40), (10, 30, 30), (20, 10, 40), (10, 40, 20)}
{(10, 20, 40), (20, 20, 30), (10, 30, 30), (20, 10, 40), (10, 40, 20)}
{(10, 20, 40), (10, 40, 20), (20, 10, 40), (10, 30, 30), (20, 20, 30), (20, 30, 20)}
{(10, 20, 40), (10, 40, 20), (20, 10, 40), (20, 40, 10), (10, 30, 30), (20, 20, 30), ( 20, 30, 20)}

Блок - схема:

«Блок-схема:

Визуализируйте выполнение кода Python:

Следующий инструмент визуализирует, что компьютер делает шаг за шагом при выполнении указанной программы:

Редактор кода Python:

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу на Python для отображения некоторой информации об ОС, в которой работает скрипт.
Далее: Напишите программу на Python для создания всех возможных перестановок из заданной коллекции различных чисел.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code