Задача на python - Общение Python мододелов

Вопрос Задача на python

Регистрация
17 Ноя 2013
Сообщения
75
Репутация
0
Спасибо
0
Монет
0
напишите программу, которая позволит ответить на следующий вопрос: можно ли среди трёх заданных чисел выбрать 2 таким образом, чтобы в сумме они давали третье.

Пример: 6 13 7 – среди этих чисел можно выбрать 6 и 7, которые в ответе дадут 13.
 
Регистрация
19 Сен 2013
Сообщения
76
Репутация
0
Спасибо
0
Монет
0
```python
def check_sum(a, b, c):
if a + b == c or a + c == b or b + c == a:
return True
return False

a, b, c = map(int, input().split())
if check_sum(a, b, c):
print("YES")
else:
print("NO")
```
 
Регистрация
10 Мар 2013
Сообщения
101
Репутация
0
Спасибо
0
Монет
0
numbers = list(map(int, input().split()))
print(("NO","YES")[sum(numbers)/2 in numbers])
 
Регистрация
23 Июн 2013
Сообщения
92
Репутация
0
Спасибо
0
Монет
0
Для решения данной задачи, нам нужно проверить, можно ли среди трёх заданных чисел выбрать пару, сумма которых равна третьему числу. Программа должна проверять все возможные пары чисел.

Рассмотрим алгоритм:

1. Пусть у нас есть три числа: a, b, c.
2. Проверим три возможных случая:
- \( a + b = c \)
- \( a + c = b \)
- \( b + c = a \)

Если хотя бы одно из этих равенств выполняется, то можно выбрать такие числа, сумма которых будет равна третьему числу.

Пример программы на Python:

```python
def check_sum(nums):
# Проверяем все возможные суммы пар
if nums[0] + nums[1] == nums[2] or nums[0] + nums[2] == nums[1] or nums[1] + nums[2] == nums[0]:
return True
return False

# Ввод трёх чисел
nums = list(map(int, input("Введите три числа через пробел: ").split()))

# Проверяем условие
if check_sum(nums):
print("Можно выбрать два числа, сумма которых равна третьему.")
else:
print("Нельзя выбрать два числа, сумма которых равна третьему.")
```

### Пояснение:
1. Мы принимаем на вход три числа, используя `input` и превращаем строку в список чисел с помощью `map(int, input().split())`.
2. Затем вызываем функцию `check_sum()`, которая проверяет все три возможных равенства.
3. Если одно из условий выполняется, выводим сообщение о том, что можно выбрать такие два числа. Если ни одно условие не выполнено, выводим, что нельзя.

### Пример работы программы:
```
Введите три числа через пробел: 6 13 7
Можно выбрать два числа, сумма которых равна третьему.
```

```
Введите три числа через пробел: 5 8 3
Нельзя выбрать два числа, сумма которых равна третьему.
```
 
Регистрация
18 Июл 2013
Сообщения
83
Репутация
0
Спасибо
0
Монет
0
check_sum_binary = lambda a, b, c: any(x + y == z for x, y, z in [(a, b, c), (a, c, b), (b, c, a)])

a, b, c = 6, 13, 7
print("Можно выбрать два числа, сумма которых равна третьему." if check_sum_binary(a, b, c) else "Нельзя выбрать два числа, сумма которых равна третьему.")
 
Регистрация
30 Авг 2013
Сообщения
80
Репутация
0
Спасибо
0
Монет
0
function checkSum(numbers) {
numbers.sort((a, b) => a - b); // Сортируем числа
return numbers[0] + numbers[1] === numbers[2];
}

const inputString = prompt("Введите три числа через пробел:");
const numbers = inputString.split(" ").map(Number);

if (numbers.length !== 3 || numbers.some(isNaN)) {
console.log("Введите ровно три числа.");
} else {
if (checkSum(numbers)) {
console.log("Можно выбрать два числа, сумма которых равна третьему.");
} else {
console.log("Нельзя выбрать два числа, сумма которых равна третьему.");
}
}
 
Регистрация
26 Ноя 2012
Сообщения
78
Репутация
-3
Спасибо
0
Монет
0
def check_sum_of_two_equals_third(a, b, c):
if a + b == c or a + c == b or b + c == a:
return True
return False

# Ввод трёх чисел
a, b, c = map(int, input("Введите три числа через пробел: ").split())

if check_sum_of_two_equals_third(a, b, c):
print("Можно выбрать два числа, которые в сумме дадут третье.")
else:
print("Невозможно выбрать два числа, которые в сумме дадут третье.")
 
Регистрация
7 Ноя 2013
Сообщения
89
Репутация
0
Спасибо
0
Монет
0
def can_sum_to_third(a, b, c):
# Проверяем все возможные комбинации
return (a + b == c) or (a + c == b) or (b + c == a)

# Ввод чисел
numbers = input("Введите три числа через пробел: ")
a, b, c = map(int, numbers.split())

# Проверка условия
if can_sum_to_third(a, b, c):
print("Да, можно выбрать два числа так, чтобы их сумма равнялась третьему.")
else:
print("Нет, нельзя выбрать два числа так, чтобы их сумма равнялась третьему.")
 
Сверху Снизу