отличать двузначное число от однозначного в python строке [закрыт]
Вопросы с просьбами помочь с отладкой («почему этот код не работает?») должны включать желаемое поведение, конкретную проблему или ошибку и минимальный код для её воспроизведения прямо в вопросе. Вопросы без явного описания проблемы бесполезны для остальных посетителей. См. Как создать минимальный, самодостаточный и воспроизводимый пример.
Закрыт 3 года назад .
надо написать цикл, который при проходе по этой строке ‘a3b4c2e10b1’ сможет отличить 10 от 1 и 0. я уже пробовал проходиться по индексам, но на последнем элементе, выдает ошибку, что цикл вне строки, потому что проверяет значение которого нет — то есть выход за строку.
Отслеживать
задан 24 июл 2020 в 13:31
1 2 2 серебряных знака 3 3 бронзовых знака
Чеееегоооо.
24 июл 2020 в 13:35
пример цикла можно? и задачу, которую он должен выполнить. А то ощущения, как и предыдущий комментарий
24 июл 2020 в 13:44
в задаче надо отличать буквы от цифр
24 июл 2020 в 13:45
for i in range(len(n)): if n[i] in ‘abcdefghijklmnopqrstuvwxyz’: c=n[i] else: if n[i+1] not in ‘abcdefghijklmnopqrstuvwxyz’: m=int(n[i]+(n[i+1])) else: m=int(n[i])
24 июл 2020 в 13:45
Отредактируйте вопрос, добавив туда код из комментария
24 июл 2020 в 14:10
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Используйте регулярные выражения — это проще всего
Вариант 1
>>> import re >>> res = re.findall(r"([a-zA-Z])*(\d*)", 'a3b4c2e10b1') >>> res [('a', '3'), ('b', '4'), ('c', '2'), ('e', '10'), ('b', '1'), (' ', ' ')] >>> letters, digits = [a[0] for a in res if a[0]], [a[1] for a in res if a[1]] >>> letters ['a', 'b', 'c', 'e', 'b'] >>> digits ['3', '4', '2', '10', '1']
UPD: теперь регулярке плевать, в каком порядке идут буквы и цифры, но приходится избавляться от пустых значений некрасиво, оптимизацию оставляю вам)
Вариант 2
>>> a = "a3b4c2e10b1" >>> digits = list(filter(None, re.split("[a-zA-Z]+", a))) >>> letters = list(filter(None, re.split("\d+", a)))
Ввести двузначное число. проверить состоит ли оно из одинаковых цифр. вывести или
Ввести двузначное число. Определить, является ли сумма его цифр четной или нет
1. Ввести двузначное число. Определить, является ли сумма его цифр четной или нет 2. Ввести.
Проверить состоит ли число из одинаковых цифр
Всем привет! Задача: на калькуляторе вводим целое число k и нажимаем "+", калькулятор все еще.
Проверить, состоит ли число из одинаковых цифр
Программа принимает от пользователя тризначне целое число. Программа должна Сообщить, состоит это.
Регистрация: 13.11.2020
Сообщений: 678
1 2 3 4 5
n = int(input()) if n[0] == n[1]: print('да') else: print("нет")
Am I evil? Yes, I am!
![]()
![]()
16119 / 9755 / 2730
Регистрация: 21.10.2017
Сообщений: 21,624
Ychenyi, ты код-то проверял хоть?
4751 / 2643 / 547
Регистрация: 07.11.2019
Сообщений: 4,359
n = int(input()) print(('нет', 'да')[ 0n100 and not n%11])
Регистрация: 13.11.2020
Сообщений: 678
iSmokeJC, честно говоря,нет
Точно,нельзя ведь у int() так делать,только у строчного типа данных
Am I evil? Yes, I am!
![]()
![]()
16119 / 9755 / 2730
Регистрация: 21.10.2017
Сообщений: 21,624
if n%10 == n//10:
Регистрация: 13.11.2020
Сообщений: 678
iSmokeJC, а если например число будет трехзначное и больше?
Тогда как проверять вообще можно?
Am I evil? Yes, I am!
![]()
![]()
16119 / 9755 / 2730
Регистрация: 21.10.2017
Сообщений: 21,624
Ychenyi, переводишь в строку и сравниваешь соответствующие срезы например.
635 / 475 / 179
Регистрация: 28.05.2012
Сообщений: 1,412
n = input() print(['Нет', 'Да'][n[0] == n[1]])
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
Сообщение от Ychenyi 
а если например число будет трехзначное и больше?
1 2 3 4 5 6 7 8 9
n = int(input('num = ')) n, prev = divmod(n, 10) while n > 0: n, k = divmod(n, 10) if prev != k: print('no') break else: print('yes')
Регистрация: 13.11.2020
Сообщений: 678
ioprst, а не могли бы вы разъяснить вторую строку, а именно зачем 2 переменных и что за функция divmod?
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
Ychenyi, одновременно две операции // и % . Возвращает кортеж.
1 2 3 4 5
n = 123 divmod(n, 10) Out[9]: (12, 3) print(n // 10, n % 10) 12 3
В коде используется для деления числа на цифры.
1 2 3 4 5 6 7 8 9 10
n = 123 n, k = divmod(n, 10) n, k Out[12]: (12, 3) n, k = divmod(n, 10) n, k Out[14]: (1, 2) n, k = divmod(n, 10) n, k Out[16]: (0, 1)
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Ввести целое число и вывести простое оно или составное
Люди, кто хорошо знает JavaScript, не останьтесь безучасными. Расскажите, как вы начинали свой путь.
Дано трехзначное число x. Определить, делится ли оно на каждую из своих цифр или нет
Дано трехзначное число x. Определить, делится ли оно на каждую из своих цифр или нет. Помогите.
Найти сумму нечетных цифр числа Определить состоит ли число из одинаковых цифр
Помогите написать прогу. Найти сумму нечетных цифр числа Определить состоит ли число из.
Состоит ли число из одинаковых цифр
Собсно, составить прогу, выясняющую, если ли в числе одинаковые цифры. На выходе да/нет. Без.

Состоит ли число из одинаковых цифр?
Здраствуйте, помогите пожалуйста написать программу Данно натуральное число N. Используя только.
Как проверить что число двузначное в python
Быстрый переход в группу «Пользователи», без надобности написания постов и ожидания.
Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info
Маппинг для сервера
Если вы хотите обновить Ваш сервер новыми доработками — то зайдите в наш раздел. Большой выбор готовых решений от наших пользователей
Моды для сервера
Огромный выбор различных модификаций для Вашего сервера. Пролистайте эти темы! Возможно именно там Вы найдете то, что искали уже давно.
Программы для скриптера
Подборка удобных программ для скриптера
- Форумы
- Языки программирования
- Delphi, Pascal, Python
- Готовые решения
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно.
Вам необходимо обновить браузер или попробовать использовать другой.
#Azamat
Изучающий
Пользователь
Регистрация 18 Ноя 2015 Сообщения 675 Лучшие ответы 0 Репутация 86 Адрес г.Уфа
Программа определяет двузначна число или нет.
var x: integer; begin write('Введите x: '); readln(x); if (x>=10) and (x<=100) then writeln('Двузначное число') else writeln('Не двузначное число') end.
Автор: Неизвестен
Поделиться:
- Партнеры Pawno Info
- Условия и правила
- Политика конфиденциальности
- Помощь
- Главная
- RSS
О нас
"Pawno Info" - портал о программировании номер один. Начните с нами изучать эти великолепные и бесконечные виртуальные миры. Научитесь создавать функции и скрипты используя наши уроки по программированию на различных языках. Задавайте вопросы которые Вас интересуют и получайте ответы от наших профессионалов. Будьте с нами. Будьте там, где лучшее.
Наши ссылки
Статистика форума
Темы 196,729 Сообщения 1,356,036 Пользователи 110,211 Новый пользователь lebedev
Портал о программировании Pawno-Info.Ru
Copyright © Pawno Info 2010-2023. Все права защищены
Created by Giness


Уважаемый Гость.
Пожалуйста - воздержитесь от любых комментариев на форуме относительно ситуации в мире.
В личных сообщениях, в темах и где бы то не было.
Помните - это закончится в любом случае, а слова, сказанные (или написанные) Вами - не забудутся никогда.
МЫ ЗА МИР.
(Любые сообщения относительно ситуации в мире(не важно с каким смыслом) буду удаляться. А пользователи - блокироваться безвозвратно. )
Двузначное число
Дано двузначное число n и число a. Определить:
а) является ли сумма его цифр двузначным числом (вывести YES или NO в первой строке);
б) больше ли числа a сумма цифр введенного числа n (вывести YES или NO во второй строке).
