Множества Python
Нужно записать множества A, B и C
а) A | B
б) B & C
в) (A | B) & C
г) A & B & C
д) С ^ B
е) А \ B
ж) Записать декартово произведение множеств А и В
з) Определить мощность множеств множества, полученного в каждом задании
Я это уже сделал, но сейчас туплю на другом
Как можно записать множество простых двузначных чисел
И как можно записать множество двузначных чисел, сумма цифр которых равна 8
Мой код:
a = {x for x in range(10, 100) if x % 2 > 0} ??
b = {x for x in range(10, 100) if x == 8} ??
c = {x for x in range(10, 100) if 10 <= x <= 51}
print("A =", a)
print("B =", b)
print("C =", c)
print("а)", a | b, f"Мощность = {len(a | b)}")
print("б)", b & c, f"Мощность = {len(b & c)}")
print("в)", (a | b) & c, f"Мощность = {len((a | b) & c)}")
print("г)", a & b & c, f"Мощность = {len(a & b & c)}")
print("д)", c ^ b, f"Мощность = {len(c ^ b)}")
print("е)", a - b, f"Мощность = {len(a - b)}")
k = []
a1 = list(a)
b1 = list(b)
print(a1, b1)
for x in a1:
for y in b1:
k.append((x, y))
print(f" A и B = {set(k)} Мощность = {len(k)}")
Ответы (1 шт):
Автор решения: D.Vinogradov
→ Ссылка
Как можно записать множество простых двузначных чисел (c):
a = {i for i in range(10, 100) if all(i % j != 0 for j in range(2, int(i ** 0.5) + 1))}
print(a)
>>> {11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97}
как можно записать множество двузначных чисел, сумма цифр которых равна 8 (c):
b = {i for i in range(10, 100) if sum(map(int, str(i))) == 8}
print(b)
>>> {35, 71, 44, 80, 17, 53, 26, 62}
p.s. если мы не берем в расчет числа 89 и 98, которые в свою очередь дают в сумме 17, которое в свою очередь дает 8.