В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
VladislavAkinshin
VladislavAkinshin
25.02.2023 06:48 •  Информатика

Делители
Дано натуральное число n. Подсчитайте количество таких пар чисел (a;b), что:
a и b — делители n;
a a и b — взаимно простые;
ab≤n.
Ввод
10
Вывод
4

Показать ответ
Ответ:
skatinyatovna
skatinyatovna
15.10.2020 13:40

если нужно, то могу скинуть программу на почту файлом

Объяснение:

def gcd(a, b):

   if b <= 0:

       return a

   if a > b:

       a, b = b, a  

   return gcd(a, b - a) == 1

def dividers(n):

   divs = []

   for i in range(1, n + 1):

       if n % i == 0:

           divs.append(i)

   return divs

def main(n):

   used = []

   number = 0

   div = dividers(n)

   for a in div:

       for b in div:

           if a != b:  

               if (a, b) not in used:              

                   if gcd(a, b):

                       if a * b <= n:

                           number += 1

           used += [(a, b), (b, a)]

   return number

print(main(int(input(

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота