Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите пожалуйста решить задачу Python

Николай Васильев Ученик (102), закрыт 1 год назад
Дана строка S и номер позиции символа в строке. Напишите программу, которая выводит соседей этого символа и сообщение о количестве таких же символов среди этих соседей: их нет, есть ровно один или есть два таких же.


Пример 1:

Введите строку: abbc

Номер символа: 3


Символ слева: b

Символ справа: c


Есть ровно один такой же символ.



Пример 2:

Введите строку: abсd

Номер символа: 3


Символ слева: b

Символ справа: d


Таких же символов нет.
Лучший ответ
Смелый Бобр Мыслитель (5308) 1 год назад
Просто и понятно:
s = input('Строка: ')
n = int(input('номер символа: '))
symbol = s[n-1]
right = s[n]
left = s[n-2]
print('Символ слева:{} \nСимвол справа:{}'.format(left, right))
if symbol == right and symbol == left: print('Есть два таких же')
elif symbol == right or symbol == left: print('Есть ровно один такой же символ.')
else: print('Таких же символов нет')
Николай ВасильевУченик (102) 1 год назад
спасибо огромное!
Кирилл АфанасьевУченик (115) 1 год назад
Если номер символа 1, ваше решение неверно.
Остальные ответы
Иванов Иван Гуру (3772) 1 год назад
Решение хорошее(см.выше):
Добавлю от себя:совместить в одной строке
несколько операций, и файл будет весить на 3КВ меньше.
Хозяйка тихого омута! Искусственный Интеллект (6404808) 1 год назад
Просто и понятно:
s = input('Строка: ')
n = int(input('номер символа: '))
symbol = s[n-1]
right = s[n]
left = s[n-2]
print('Символ слева: { } \nСимвол справа: { } '.format(left, right))
if symbol == right and symbol == left: print('Есть два таких же')
elif symbol == right or symbol == left: print('Есть ровно один такой же символ.')
else: print('Таких же символов нет')
Похожие вопросы