Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3581047
А
Аноним
07 марта 2026 17:06 · публичный вопрос
А
Аноним

Хозяина ресторана интересует, понравились ли клиенту фирменные блюда: шоколадный торт и шашлык. Напиши программу, которая запрашивает у пользователя понравившиеся блюда и печатает…

Запрос пользователя

Хозяина ресторана интересует, понравились ли клиенту фирменные блюда: шоколадный торт и шашлык. Напиши программу, которая запрашивает у пользователя понравившиеся блюда и печатает результат поиска как на картинке: - Если блюдо найдено, то программа печатает номер символа, с которого начинается блюдо. - Если блюдо не найдено, то программа печатает -1.

Ответ нейросети
07 марта 2026 17:06

Задача понятна. Ниже приводжу подробное решение и рабочий пример на Python.

Цель и подход

  • Нужно проверить, понравились ли клиенту два фирменных блюда: шоколадный торт и шашлык.
  • Программа запрашивает строку с перечислением понравившихся блюд и для каждого из двух блюд выводит номер символа, с которого начинаетсяЭто блюдо в введенной строке. Если блюдо не найдено — выводит -1.
  • Ввод и поиск выполняем без учета регистра, чтобы работа была устойчивой к заглавным/страдательным формам.
  • Нумерация символов — 1-based (первый символ имеет номер 1). В Python поиск возвращает 0-based индекс, поэтому при найденном результате прибавляем 1. Если не найдено, возвращаем -1.

Пояснение по шагам

  1. Определяем искомые блюда: "шоколадный торт" и "шашлык".
  2. Считываем строку у пользователя и переводим её в нижний регистр для корректного сравнения.
  3. Для каждого блюда выполняем поиск в строке:
    • индекс = строка.find(блюдо)
    • если индекс == -1, выводим -1
    • иначе выводим индекс + 1 (1-based позиция начала блюда)
  4. Выводим две строки с результатами для каждого блюда.

Пример входа/выхода

  • Ввод: "я люблю шашлык и шоколадный торт"
  • Вывод:
  1. позиция начала шоколадного торта
  2. позиция начала шашлыка (числа будут конкретными позициями в строке)

Готовый код (Python)

# -*- coding: utf-8 -*-
def main():
    s = input("Введите понравившиеся блюда: ")
    s_l = s.lower()

    targets = ["шоколадный торт", "шашлык"]

    for t in targets:
        idx = s_l.find(t)
        if idx == -1:
            print(-1)
        else:
            # 1-based позиция
            print(idx + 1)

if __name__ == "__main__":
    main()

Пояснение по тесту

  • Если пользователь введет: "я люблю шашлык и шоколадный торт"
    • для "шоколадный торт" найдём индекс, например, 21, вывод будет 22 (если считать с 1).
    • для "шашлык" найдётся индекс, например, 9, вывод будет 10.
  • Если блюда не встречаются в строке, соответствующий вывод будет -1.

Если хочешь, могу адаптировать программу под другой язык программирования или изменить формат вывода (например, вывод в одну строку через пробел).