top of page


Форматирование строк
 

Задача 1. Курсы валют

Вследствие кибератаки на банк "Разбогатеем вместе" сломался алгоритм, выводящий курсы валют для определенной даты в мобильном приложении. Технический отдел банка просит вас исправить ситуацию и наладить вывод. На вход программе подаются следующие значения:

  • дата (в формате ДД-ММ-ГГГГ)

  • курс доллара (сколько российских рублей стоит 11 доллар)

  • курс юаня (сколько российских рублей стоит 11 юань)

Напишите программу, которая выводит строку, показывающую, сколько российских рублей стоит 11 доллар и 11 юань на указанную дату в формате: На <дата>: 1$ = <курс доллара>₽, 1¥ = <курс юаня>₽

 

a, b, c = [input() for i in range(3)]

s = 'На {}: 1$ = {}₽, 1¥ = {}₽'.format(a,b,c)

print(s)

 

Задача 2. (Не) Активное похудение

Гвидо, засевший за компьютером и не ведущий активный образ жизни, "немного" поднабрал в весе. Осталось всего 6060 дней до лета, а хочется быть в форме. Вот Гвидо и решился на похудение. Все дни до лета он пронумеровал от 11 до 6060 (включительно). Перед началом похудения у Гвидо был вес 100100 кг, а своей целью он поставил достичь веса 8888 кг (или меньше). Он решил худеть на одну и ту же массу ежедневно.

Напишите программу, которая принимает на вход текущий день и текущий вес Гвидо. Программа должна вывести фразу:

  • "Все идет по плану" (без кавычек), если Гвидо удается держать планку в похудении и его вес ниже либо равен тому, который он запланировал на текущий день

  • "Что-то пошло не так" (без кавычек), если Гвидо не очень старается и его вес выше того, который он запланировал на текущий день

Также программа должна вывести информацию о номере дня похудения, текущем весе Гвидо и цели по весу на текущий день в формате: #<номер дня> ДЕНЬ: ТЕКУЩИЙ ВЕС = <текущий вес Гвидо> кг, ЦЕЛЬ по ВЕСУ = <цель по весу на текущий день> кг

a=input()

b=float(input())

n=100-0.2*float(a)

if n >= float(b):

    print("Все идет по плану")

    print('#{} ДЕНЬ: ТЕКУЩИЙ ВЕС = {} кг, ЦЕЛЬ по ВЕСУ = {} кг'.format(a,b,n))

else:

    print("Что-то пошло не так")

    print('#{} ДЕНЬ: ТЕКУЩИЙ ВЕС = {} кг, ЦЕЛЬ по ВЕСУ = {} кг'.format(a,b,n))

 

Задача 3. Символы в диапазоне

На вход программе подаются два числа a и b. Напишите программу, которая для каждого кодового значения в диапазоне от a до b (включительно), выводит соответствующий ему символ из таблицы символов Unicode.

a=int(input())

b=int(input())

for i in range(a,b+1):

    print(chr(i), end=" ")

 

Задача 4. Простой шифр

На вход программе подается строка текста. Напишите программу, которая переводит каждый ее символ в соответствующий ему код из таблицы символов Unicode.

s=input()

for i in s:

    print (ord(i), end=" ")

 

Задача 4. Шифр Цезаря 🌶️

Легион Цезаря, созданный в 2323 веке на основе Римской Империи не изменяет древним традициям и использует шифр Цезаря. Это их и подвело, ведь данный шифр очень простой. Однако в постапокалипсисе люди плохо знают все тонкости довоенного мира, поэтому ученые из НКР не могут понять, как именно нужно декодировать данные сообщения. Напишите программу для декодирования этого шифра.

a=int(input())

s=input()

for i in range (len(s)):

    n=ord(s[i])-a

    if n<97:

        n = 122 - (96 - n)

    print(chr(n), end="")

 

 

Задача 5. Второе вхождение

На вход программе подается строка текста. Напишите программу, которая выводит индекс второго вхождения буквы «f». Если буква «f» встречается только один раз, выведите число −1, а если не встречается ни разу, выведите число −2.

s=input()

if s.count('f') == 1:

    print("-1")

elif s.count('f') == 0:

    print("-2")

else:

    s=s.replace('f', ' ', 1)

    print(s.find('f'))

 

Задача 6. Переворот

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

s = input()

a = s[:s.find('h')]

b = s[s.find('h'):s.rfind('h') + 1]

c = s[s.rfind('h') + 1:]

s = a + b[::-1] + c

print(s)

bottom of page