Вход
Быстрая регистрация
Если вы у нас впервые: О проекте FAQ
1

Python. Как написать функцию numbers(n), возвращающую количество ...?

spring948374 [435K] 1 неделю назад

Дано натуральное число n. Напишите функцию numbers(n), которая возвращает количество различных цифр, которые использовались в записи числа.

1

В записи натурального числа, кроме цифр, может использоваться знак числа плюс (+)

Это надо учесть при подсчитывании количества цифр.

Алгоритм работы функции numbers(n):

  1. Преобразуем число в текстовую запись этого числа функцией str
  2. Генератором создадим список цифр, используя строковый метод isdigit
  3. Создадим из списка цифр множество различных цифр, используя функцию set
  4. Подсчитаем количество элементов этого множества
  5. Вернём результат оператором return

Этот алгоритм реализован в следующем коде:

def numbers(n):

​ ​ ​ ​ return len(set([s for s in str(n) if s.isdigit()]))

Если в записи натурального числа могут быть только цифры, код будет таким:

def numbers(n):

​ ​ ​ ​ return len(set(str(n))

Для проверки правильности работы функции numbers(n) придётся составить программу:

Результат работы программы:

автор вопроса выбрал этот ответ лучшим
Знаете ответ?
Есть интересный вопрос? Задайте его нашему сообществу, у нас наверняка найдется ответ!
Делитесь опытом и знаниями, зарабатывайте награды и репутацию, заводите новых интересных друзей!
Задавайте интересные вопросы, давайте качественные ответы и зарабатывайте деньги. Подробнее..
регистрация