Бесконечный ввод
Задание: Дано натуральное число. (Вводится с клавиатуры). Определить сколько раз в нем встречается минимальная цифра. Например, для числа 201 001 ответ равен 3. Для числа 4033 — 1. Для числа 434643 — 2.
Написал вот такой код:
chisl = int(input(«Введите число: «))
i = 0
n = 10
while chisl > 0:
if chisl % 10 < n:
n = chisl % 10
chisl //= 10
while chisl > 0:
if chisl % 10 == n:
i += 1
chisl //= 10
После первого ввода он продолжает просить ввести число. Подскажите что не так или как можно реализовать по другому.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Бесконечный повторный ввод
Всем, доброго дня! Не так давно изучаю питон. Помогите дописать программу. Нужно угадать два числа.
Бесконечный цикл
tokenlist = s = input() s=s+’ ‘ fstsym = "*/" sndsym = "+-" allsym = ‘+-*/’ tempstr = "".
Бесконечный цикл
Какое самое маленькое число делится нацело на все числа от 1 до 20? Дело в том, что ничего не.
Бесконечный цикл программы
здравствуйте! помоги пожалуйста, сделал игру "Камень Ножницы Бумага". Хочу сделать бесконечный.
![]()
2683 / 1589 / 512
Регистрация: 21.02.2017
Сообщений: 4,205
Записей в блоге: 1
1 2 3 4 5 6 7
# -*- coding: utf-8 -*- number = input("Введите число") minimum = min(number) amount = number.count(minimum) print(f"Number: , minimum: , amount: ")
Регистрация: 15.06.2020
Сообщений: 9
А можно через циклы?
307 / 288 / 116
Регистрация: 23.01.2018
Сообщений: 933
1 2 3 4 5 6 7 8 9
n, m = divmod(int(input()), 10) k = 1 while n: n, d = divmod(n, 10) if d == m: k += 1 elif d m: m, k = d, 1 print(m, k)
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Бесконечный вызов функции
Здравствуйте, проблема в том, как я понял, что функция qwe у меня вызывается постоянно и по-этому.
Бесконечный цикл с условиями
Здравствуйте, я всего месяц стала изучать программирование и мне нужна помощь! По задумке, эта.
Прервать бесконечный цикл
Добрый день У меня получается бесконечный цикл подскажите как сделать0 чтобы например.

Бесконечный индекс массива
Заменить числа в массиве на сумму чисел до и после этого числа input = res_list = len_mass.

Что работает быстрее, ввод с консоли или ввод с файла?
вводятся множество списков программа удаляет первое число списка и удаляет все числа в этом списке.

Как определить бесконечный список?
Добрый день. Есть такая ситуация: в результате работы кода, появляются бесконечно вложенные друг в.
Пользовательский ввод чисел в строку
Функция input() возвращает все в виде строки, поэтому нужно выполнить явную конвертацию, чтобы получить целое число. Для этого пригодится функция int() .
# вывод суммы двух чисел, введенных пользователем
num_1 = int(input("Введите первое число: "))
num_2 = int(input("Введите второе число: "))
print("Тип num_1:", type(num_1))
print("Тип num_2:", type(num_2))
result = num_1 + num_2
print("Сумма введенных чисел:", result)int(string) конвертирует переданную строку в целое число.
Ввода числа float
По аналогии можно использовать функцию float() .
float_1 = float(input("Введите число: "))
print("Тип float_1:", type(float_1))
result = float_1 ** 2
print("Число в квадрате:", result)Введите число: 1.8 Тип float_1: Число в квадрате: 3.24Ввод чисел в строку через пробел
Но что произойдет, если вы не знаете количество элементов ввода?
Предположим, что от пользователя нужно получить список чисел и вернуть их сумму. При этом вы не знаете количество элементов в этом списке. Как же запросить ввод для него?
Для этого можно использовать split и функции map . Метод split() делит введенную строку на список подстрок. После этого map() выполняет функцию int() для каждого элемента списка.
entered_list = input("Введите список чисел, разделенных пробелом: ").split()
print("Введенный список:", entered_list)
num_list = list(map(int, entered_list))
print("Список чисел: ", num_list)
print("Сумма списка:", sum(num_list))Введите список чисел, разделенных пробелом: 1 34 4 6548 Введенный список: ['1', '34', '4', '6548'] Список чисел: [1, 34, 4, 6548] Сумма списка: 6587
- input() возвращает список, содержащий числа, разделенные запятыми.
- split() возвращает список строк, разделенных пробелами.
- map() выполняет операцию int() для всех элементов списка и возвращает объект map .
- list() конвертирует объект map снова в список.
Есть альтернативный способ получить список:
entered_list = input("Введите список чисел, разделенных пробелом: ").split()
num_list = [int(i) for i in entered_list]
print("Список чисел: ", num_list)Обработка ошибок при пользовательском вводе
Часто при конвертации типов возникает исключение ValueError .
Это происходит в тех случаях, когда введенные пользователем данные не могут быть конвертированы в конкретный тип.
Например, пользователь вводит случайную строку в качестве возраста.
num = int(input("Введите возраст: "))Функция int() ожидает целочисленное значение, обернутое в строку. Любое другое значение приводит к ошибке. Вот что будет, если, попробовать ввести «Двадцать»:
Введите возраст: Двадцать --------------------------------------------------------- ValueError Traceback (most recent call last) in ----> 1 num_1 = int(input('Введите возраст: ')) ValueError: invalid literal for int() with base 10: 'Двадцать'Чтобы убедиться, что пользователь вводит только подходящую информацию, нужно обработать массу подобных ошибок. Для этого будем использовать перехват исключений.
try:
num = int(input("Введите число: "))
print("Все верно. Число:", num)
except ValueError:
print("Это не число.")Посмотрим, как ввод «Двадцать» сработает теперь:
Введите число: Двадцать Это не число.В этом примере если пользователь вводит нечисловое значение, то возникает исключение. Однако оно перехватывается инструкцией except , которая в ответ выводит: «Это не число». Благодаря использованию конструкции try-except программа не прекратит работать при некорректном вводе.
Я создал этот блог в 2018 году, чтобы распространять полезные учебные материалы, документации и уроки на русском. На сайте опубликовано множество статей по основам python и библиотекам, уроков для начинающих и примеров написания программ.
Мои контакты: Почта
Python Q https://yandex.ru/q/loves/python Online
Python Q CEO Pythonru admin@pythonru.com https://secure.gravatar.com/avatar/b16f253879f7349f64830c64d1da4415?s=96&d=mm&r=g CEO Pythonru Python Александр Редактор https://t.me/cashncarryhttps://pythonru.com/https://yandex.ru/q/profile/cashnc/ PythonRu.com admin@pythonru.com Alex Zabrodin 2018-10-26 Online Python, Programming, HTML, CSS, JavaScript
Бесконечный ввод и подсчет положительных чисел
С клавиатуры вводятся целые числа, до тех пор пока не будет введена строка "стоп". Посчитать количество положительных чисел, среди введенных.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:Подсчет количества положительных чисел в списке и формирование списка с номерами позиций этих чисел
Подсчитайте количество положительных чисел в списке и сформируйте список с номерами позиций этих.
Подсчёт положительных чисел
Подсчитать количество положительных чисел среди чисел a, b, c. Как и в других моих темах, буду.Ввод чисел по while, подсчет среднего
Числа вводятся в бесконечном цикле, пока пользователь не прекратит. Пользователь вводит число.705 / 588 / 150
Регистрация: 04.03.2022
Сообщений: 1,220
301 / 213 / 104
Регистрация: 02.08.2022
Сообщений: 344
Сообщение было отмечено iSmokeJC как решение
Решение
Whitecolor,
1 2 3 4counter = 0 while (num := input()) != 'стоп': counter += int(num) > 0 print(counter)750 / 519 / 66
Регистрация: 10.03.2012
Сообщений: 3,7701 2 3 4 5 6 7count = 0 num=0 while num != "стоп": if int(num) > 0: count += 1 num = input("Введите число: ") print("количество введенных чисел = " ,count)1 2 3 4 5 6 7 8 9stop = "stop" number = "" count = 0 while stop != number: number = input("Number: ") if number != "stop": if int(number) > 0: count += 1 print("Положительных чисел:", count)Добавлено через 3 минуты
1 2 3 4 5 6 7 8count = 0 while True: s = input('input numberes while стоп:') if s == "стоп": break elif int(s) > 0: count += 1 print(count)87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесьПодсчет произведения положительных чисел
Ребят кто может помочь ? Составить программу подсчета произведения положительных чисел, входящих в.
Подсчёт отрицательных и положительных чисел
Добрый день! Помогите составить макрос, который будет подсчитывать количество крайних нижних.Подсчет количества положительных и отрицательных чисел
Мне очень нужна помощь в создании bat-файла Задание: разработать командный файл для.Считывание положительных чисел с объекта Edit и их подсчёт
Возникла такая задача.Есть 4 объекта Edit,куда нужно вносить целые числа(отрицательные и.
Рекурсия: подсчет количества положительных чисел в массиве
Заданы массивы А(5), В(11). Определить, в каком массиве больше положительных чисел. Подсчет.
Последовательность чисел. Подсчет количества положительных и отрицательных элементов.
вводится последовательность ненулевых чисел 0-конец .последовательности . подчитать сколько в нем.Как создать бесконечный цикл в бесконечном цикле на Python
Не получается создать бесконечный цикл в таком-же цикле. Ошибок нет, но программа просто пропускает часть кода начиная со второго while.
while True: print("Введите 'Добавить' чтобы добавить два числа") user_input = input(": ") if user_input == "Добавить" or "добавить": while True: numb1 = float(input("Введите первое число: ")) numb2 = float(input("Введите второе число: ")) print(str(numb1), str(numb2))Отслеживать
4,497 2 2 золотых знака 9 9 серебряных знаков 28 28 бронзовых знаков
задан 27 апр 2020 в 18:29
1 1 1 золотой знак 1 1 серебряный знак 2 2 бронзовых знакаИсключений, может, и нет. А вот ошибка как раз есть. Условие if user_input == "Добавить" or "добавить": всегда истинно.
27 апр 2020 в 18:34
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
>>> while True: . print("Введите 'Добавить' чтобы добавить два числа") . user_input = input(": ") . if user_input.lower() == "добавить": . while True: . numb1 = float(input("Введите первое число: ")) . numb2 = float(input("Введите второе число: ")) . print(str(numb1), str(numb2)) . Введите 'Добавить' чтобы добавить два числа : добавить Введите первое число: 10 Введите второе число: 5 10.0 5.0 Введите первое число: 15 Введите второе число: 3 15.0 3.0 Введите первое число: 123 Введите второе число: 10 123.0 10.0 Введите первое число:Программа точно следует логике, которую вы в неё заложили, если исправить неправильно составленное условие.
То, что идёт после цикла, не пропускается - до него попросту не доходит очередь. Если вам нужно, чтобы после цикла выполнялся ещё какой-либо код, имеет смысл сделать выход из цикла:>>> while True: . print("Введите 'Добавить' чтобы добавить два числа") . user_input = input(": ") . if user_input.lower() == "добавить": . while True: . numb1 = float(input("Введите первое число: ")) . numb2 = float(input("Введите второе число: ")) . print(str(numb1), str(numb2)) . if numb1 == numb2: # условие, при котором цикл заканчивается. Я использовал условие равенства двух чисел, у вас оно может быть другим . break . print('***** Бесконечный цикл закончен, код дальше выполняется') . Введите 'Добавить' чтобы добавить два числа : добавить Введите первое число: 3 Введите второе число: 2 3.0 2.0 Введите первое число: 3 Введите второе число: 5 3.0 5.0 Введите первое число: 5 Введите второе число: 5 5.0 5.0 ***** Бесконечный цикл закончен, код дальше выполняется Введите 'Добавить' чтобы добавить два числа :Что касательно ошибки в вашем коде:
user_input = input() if user_input == "Добавить" or "добавить": print('Это условие выполняется всегда!')Вы можете сами это проверить. Дело в том, что с учётом приоритетов операций условие выглядит так:
if (user_input == "Добавить") or ("добавить"): pass # do somethingЛогическое выражение user_input == "Добавить" может принимать как истинное значение, так и ложное, а вот логическое значение строки "добавить" всегда истинно, т.к. любая непустая строка имеет истинное булево представление. Если хотите использовать именно такой подход к решению, а не приведением к нижнему регистру, условие должно иметь вид:
if user_input in ("Добавить", "добавить"): pass # do something
