М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Anonim78e
Anonim78e
30.04.2020 03:37 •  Информатика

Нужно решить задачу на питоне: Условия:
Напишите программу, в которой пользователь вводит целое число, а программа определяет, сколько в этом числе цифр 0,1,2 и так далее
Начала делать вот так, а потом застряла
n = int(input("Введите целое число"))
numbers = [1,2,3,4,5,6,7,8,9,0]
for s in numbers:
if n in numbers:

👇
Ответ:
Настя16764631
Настя16764631
30.04.2020

#Основной нулевой (без применения обхода строки в цикле, то есть обход идет строго по числу типа int, функций, исключений, словарей). Применяется строковый метод isdigit, который проверяет состоит ли строка из цифр.

num = input('Введите целое число: ')

list_digits = [0] * 10

if num.isdigit():

    num = int(num)

    if num == 0:

       list_digits[0] = 1

       

    while num != 0:

        list_digits[num % 10] += 1  

        num //=10

   

    for digit in range(10):

       

        print(f'Цифра: {digit}, количество: {list_digits[digit]}')

           

else:

   print('Число должно быть типа int')

#Основной нулевой , но с применением обхода по строке (не факт, что так можно, но пусть будет)

str_num = input('Введите целое число: ')

list_digits = [0] * 10

if str_num.isdigit():

   for str_digit in str_num:

       list_digits[int(str_digit)] += 1  

       

   for digit in range(10):

       print(f'Цифра: {digit}, количество: {list_digits[digit]}')

               

else:

  print('Число должно быть типа int')

#Нужно заметить, что у нулевого есть недостаток, ибо при неверном наборе числа программу придется запускать снова вручную. Далее пойдут другие , применять их или нет дело ваше, но все таки пусть полежат.

# Первый (без применения обхода строки в цикле)

def main():

   

   try:

       num = int(input('Введите целое число: '))

       '''

       При вводе числа с клавиатуры число будет типа str по умолчанию, поэтому,

       если в строке будут символы помимо цифр от 0 до 9, то при воздействии на него функции

       int происходит ошибка ValueError, число типа 078 автоматически воспринимаются без

       нулей вначале

       '''

       dict_of_digits = {n:0 for n in range(10)}  

     

       if num == 0:

           dict_of_digits[0] = 1

       

       while num != 0:

           dict_of_digits[num % 10] += 1  

           num //=10

       

       for digit, quanity_digits in dict_of_digits.items():

           print(f'Цифра: {digit}, количество: {quanity_digits}')

           

   except ValueError:

       

       print('Число должно быть типа int, попробуйте снова!')

       main()

main()

# второй с применением обхода по строке

def main():

   

   try:

       num = int(input('Введите целое число: '))

       '''

       При вводе числа с клавиатуры число будет типа str по умолчанию, поэтому,

       если в строке будут символы помимо цифр от 0 до 9, то при воздействии на него функции

       int происходит ошибка ValueError, число типа 078 автоматически воспринимаются без

       нулей вначале

       '''

       str_num = str(num)

       

       dict_of_digits = {n:0 for n in range(10)}  

       

       for str_digit in str_num:

           dict_of_digits[int(str_digit)] += 1  

       

       for digit, quanity_digits in dict_of_digits.items():

           print(f'Цифра: {digit}, количество: {quanity_digits}')

           

   except ValueError:

       

       print('Число должно быть типа int, попробуйте снова!')

       main()

main()

4,4(74 оценок)
Ответ:
dreakalex
dreakalex
30.04.2020

k = int(input("Введите целое число: "))

k = list(str(k))

h=[]

for i in k:

i=int(i)

h.append(i)

slovar={0:0, 1:0, 2:0, 3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0}

for i in h:

slovar[i]+=1

for i in slovar:

print(f"{i} ---> {slovar[i]}")

4,6(68 оценок)
Открыть все ответы
Ответ:
Zavaw
Zavaw
30.04.2020
Ищем в именах файлов закономерности, чтобы выделить пять из них.
1. Есть ровно пять файлов, начинающихся символом "p". В расширении имени (после точки) они имеют от одного до  трех символов.
Регулярное выражение будет иметь вид p[a-z]*.[a-z]*
2. Есть ровно пять файлов, имена которых завершаются символом "r". В расширении имени (после точки) они имеют от двух до  трех символов.
Регулярное выражение будет иметь вид [a-z]*r.[a-z]*

Ищем среди ответов похожий.
p+[a-z]*.[a-z]* - в принципе, то же, знак + тут необязателен, но и не мешает.
[a-z]*r+.[a-z]{3} - все портит это {3}, требующее ровно 3 повторения, а у нас от 2 до 3.

ответ:
p+[a-z]*.[a-z]*
4,8(13 оценок)
Ответ:
nastyamaksimis
nastyamaksimis
30.04.2020
У меня 7 числа день рождения - информация понятная, актуальная если 7 число не наступило, и неактуально если полезная если я это говорю своему другу, и бесполезна если говорю мимо идущему прохожему которого вижу впервые, достоверная если я сказал правду, и недостоверная если солгал, полная если этого достаточно чтобы понять когда я родился(говорили про текущий месяц), и неполная если я просто так заикнулся не уточнив месяц, понятная если сказал на русском рускоязычному человек, непонятная если я сказал по русски тому кто русский не понимает(иностранцу к примеру). если смысл понятен то можно придумать много таких вариантов даже из одного примера, в принципе можно и на каждый случай отдельные приводить
4,5(63 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ