В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
lizaknyazeva580
lizaknyazeva580
25.09.2021 14:21 •  Информатика

28
урок 3. оператор присваивания
4. определите, является ли не более чем четырехзначное число k
симметричным (например, числа 1331 или 550 являются симметрич-
ными, для последнего из них считается, что это четырехзначное число
с ведущим нулем).
на вход программе подается целое число k (0 < < < ). выдай-
те 1 при положительном ответе на вопрос и любое другое целое
число — в противном случае.
примеры входных данных
примеры выходных данных
2008
2002
1

pascal/python/c++​

Показать ответ
Ответ:
ТАПОРИК
ТАПОРИК
12.01.2024 18:41
Хорошо, давайте разберемся с этим вопросом.

В этом задании мы должны определить, является ли число k симметричным или нет.

Сначала нужно прочитать целое число k, которое вводится с клавиатуры пользователем.

После этого нужно определить, сколько знаков имеет число k. Для этого мы можем использовать функцию len() в Python или просто подсчитать количество цифр из числа.

Далее, если число k состоит из 1 или 2 знаков, то оно точно является симметричным, так как оно может быть прочитано как справа налево и слева направо одинаково.

Если число k состоит из 3 или 4 знаков, то мы можем проверить симметричность, сравнивая первую и последнюю цифру с соответствующими цифрами в середине (если они есть). Если они все равны, то число k является симметричным.

В коде на Python это может выглядеть следующим образом:

```python
k = int(input("Введите число k: "))

digits = str(k)
num_digits = len(digits)

if num_digits <= 2:
print(1) # число является симметричным
else:
first_digit = digits[0]
last_digit = digits[-1]
middle_digits = digits[1:-1]

if first_digit == last_digit and middle_digits == middle_digits[::-1]:
print(1) # число является симметричным
else:
print(-1) # число не является симметричным
```

Вот пошаговое решение:

1. Создаем переменную k и присваиваем ей введенное пользователем целое число.
2. Конвертируем число k в строку и сохраняем в переменную digits.
3. Находим количество цифр в числе k и сохраняем в переменную num_digits.
4. Если число num_digits меньше или равно 2, то выводим 1, так как число является симметричным.
5. Иначе, сохраняем первую цифру числа k в переменную first_digit и последнюю цифру в переменную last_digit.
6. Сохраняем все цифры между первой и последней цифрой в переменную middle_digits.
7. Сравниваем первую цифру с последней и middle_digits с его перевернутой версией middle_digits[::-1]. Если оба условия выполняются, то число является симметричным и выводим 1.
8. Иначе, число не является симметричным и выводим -1.

Надеюсь, это помогло!
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота