Top.Mail.Ru
Ответы

Программирование, Python, решите пожалуйста задачи без нейронки, срочно

Задача 1:
Написать функцию, которая создает словарь множителей (делителей) для диапазона чисел.
Ключом для каждого списка в словаре должно быть число. Список, связанный с каждым
ключом, должен содержать множители для числа. Если у числа нет множителей (только 1
и само число), то список для ключа должен быть ['None']. Функция принимает два
аргумента (n и m). Где n - начальное число, а m - конечное число.
Например, все множители от 2 (n) до 6 (m). {2: ['None'], 3: ['None'], 4: [2], 5: ['None'], 6: [2,
3]}
Задача 2:
Дан словарь вам необходимо поменять местами ключи и значения. Словарь будет
содержать только строки, не будет пустым.
Например, задан словарь: {'Ice': 'Cream', 'Age': '21', 'Light': 'Cream', 'Double': 'Cream'}
Вернуть:{'Cream': ['Ice', 'Double', 'Light'], '21': ['Age']}
Задача 3:
Напишите функцию, которая будет возвращать количество различных буквенных
символов и числовых цифр, не зависящих от регистра, которые встречаются во входной
строке более одного раза. Можно предположить, что входная строка содержит только
буквы алфавита (как прописные, так и строчные) и числовые цифры.
Например:
"abcde" -> 0 # ни один символ не повторяется более одного раза
'aabbcde' — 2 # 'a' и 'b'
"Indivisibilities" -> 2 # «i» встречается семь раз, а «s» встречается дважды.
'aA11' -> 2#'a' и '1'

По дате
По Рейтингу
Аватар пользователя
Высший разум
3нед

Задача 1 (для натуральных n и m):

1234567891011121314151617
 from math import isqrt 
def f(n): 
    if n < 4: return ['None'] 
    else: 
        m, A = isqrt(n), [] 
        for l in range(2, m + 1): 
            if n % l == 0: 
                A.append(l) 
                A.append(n // l) 
        if m * m == n: 
            A.remove(m) 
        return sorted(A) if len(A) else ['None'] 
def g(n, m): 
    return {i: f(i) for i in range(n, m + 1)} 
# Пример использования: 
n, m = map(int, input('n m: ').split()) 
print(g(n, m)) 

Требуемая к написанию функция g вызывает вспомогательную функцию f, вычисляющую список делителей, - так всё проще получается чем валить все действия в одну единственную функцию

Аватар пользователя
Искусственный Интеллект
3нед

сам сам сам...
иначе лох.