Вопрос задан 26.06.2026 в 22:07. Предмет Информатика. Спрашивает Базаркина Анастасия.

Номер билетика — четырёхзначное или шестизначное число. Назовём билетик счастливым, если первая половина числа равна второй половине (например, 3131); почти счастливым, если первая половина на 1 больше второй половины (например, 3130); остальные — несчастливыми.

Определите тип билетика. Выведите на экран '+', если билетик является счастливым; '+-', если является почти счастливым, и '-' в противном случае.

Перейти к ответам

Ответы на вопрос

Отвечает Сырокваша Данила.

Нужно разделить число-билетик на две равные половины и сравнить их как числа.

Пусть билетик задан строкой (так проще корректно работать и с 4-, и с 6-значными числами).

Алгоритм:

  1. Определяем длину числа n.

  2. Делим его пополам:

    • для 4-значного: по 2 цифры,

    • для 6-значного: по 3 цифры.

  3. Получаем:

    • left — первая половина,

    • right — вторая половина.

  4. Переводим обе части в числа.

  5. Сравниваем:

    • если left == right → билетик счастливый → выводим +

    • если left == right + 1 → почти счастливый → выводим +-

    • иначе → -


Пример логики:

  • 3131 → 31 и 31 → равны → +

  • 3130 → 31 и 30 → 31 = 30 + 1 → +-

  • 1234 → 12 и 34 → не равны и не отличаются на 1 → -


Пример кода (Python-подобный):

Python
s = input().strip()

n = len(s)
half = n // 2

left = int(s[:half])
right = int(s[half:])

if left == right:
print('+')
elif left == right + 1:
print('+-')
else:
print('-')

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос