Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.56/75: Рейтинг темы: голосов - 75, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 06.04.2016
Сообщений: 18

Образуют ли цифры данного числа возрастающую или убывающую последовательность

28.08.2020, 18:26. Показов 17035. Ответов 22

Студворк — интернет-сервис помощи студентам
Дано трехзначное число. Проверить истинность высказывания: «Цифры данного числа образуют возрастающую или убывающую последовательность» Как это будет выглядить на Питоне
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.08.2020, 18:26
Ответы с готовыми решениями:

Найти все натуральные четырехзначные числа, цифры в которых образуют строго возрастающую последовательность
Найти все натуральные четырехзначные числа, цифры в которых образуют строго возрастающую последовательность (например, 1234, 5789)

Верно ли, что цифры данного числа образуют возрастающую или убывающую последовательность
Задачи на использование логических операторов, операторов отношения. Во всех заданиях данной группы требуется вывести логическое значение...

Верно ли, что цифры данного трехзначного числа образуют возрастающую или убывающую последовательность
Суть проблемы:Если ввести четырехзначное число,то программа выведет всё равно True или False.И ещё:если ввести буквы,то программа тоже...

22
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
28.08.2020, 19:36
Лучший ответ Сообщение было отмечено ildwine как решение

Решение

Python
1
2
3
4
5
x = int(input())
print('YES' if (x//100-(x//10)%10)*
               ((x//10)%10 -x%10) >= 0 
               and x//100 != x%10 
            else 'NO')
0
99 / 86 / 20
Регистрация: 10.09.2019
Сообщений: 708
28.08.2020, 20:12
В принципе, не важно как это будет выглядеть на питоне, важна не природа рассматриваемого объекта, а существующие между ними отношения. Здесь действуют такие же строгие логические рассуждения, как и в математике. В данном случае необходимо определить необходимые и достаточные условия для подтверждения истинности данного высказывания, что Gdez, Вам и продемонострировал используя различные операторы используемые в языке Пайтон.)
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
28.08.2020, 20:13
Python
1
2
3
4
5
6
L = list(input('Введите трехзначное число: '))
 
if L[0] < L[1] < L[2] or L[0] > L[1] > L[2]:
    print('YES')
else:
    print('NO')
Именно так мы анализировали бы число мысленно.
1
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
28.08.2020, 20:27
Лучший ответ Сообщение было отмечено ildwine как решение

Решение

Viktorrus, любите вы усложнить, строка ведь это тоже последовательность, нет нужды ее в список совать
ну и название L это ... как то не к лицу вам
Python
1
2
3
4
5
6
7
8
>>> L = input('Введите трехзначное число: ')
Введите трехзначное число: 123
>>> if L[0] < L[1] < L[2] or L[0] > L[1] > L[2]:
...     print('YES')
... else:
...     print('NO')
...
YES
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
28.08.2020, 20:35
Welemir1, Согласен, перемудрил. Насчет больших букв уговорили, больше не буду.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
28.08.2020, 20:37
Viktorrus, а вот само решение мне понравилось и начинающему самое то!
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
28.08.2020, 22:30
Если в задании требуется строго возрастающая (убывающая), то - да...
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
29.08.2020, 12:41
Цитата Сообщение от Gdez Посмотреть сообщение
Если в задании требуется строго возрастающая (убывающая), то - да...
Я уже давно не занимался математикой, а лезть в интернет и смотреть определение возрастающая (убывающая) последовательности, я поленился. А в чем проблема? Что трудно заменить > и < на >= и <= ? А с математическими определениями пусть ТС разбирается сам. Я например не хочу разбираться 333 , это возрастающая или убывающая последовательность, или не то и не другое.

Добавлено через 7 минут
Gdez, Опять, в интернет я не полез, но по логике видимо возрастающая последовательность это 233, а 333 не возрастающая и не убывающая последовательность. Тогда решение усложняется, и мой вариант не подходит.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
29.08.2020, 12:44
Цитата Сообщение от Viktorrus Посмотреть сообщение
возрастающая последовательность это 233
Это неубывающая последовательность.
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
29.08.2020, 13:25
Gdez,
Цитата Сообщение от Viktorrus Посмотреть сообщение
по логике видимо возрастающая последовательность это 233, а 333 не возрастающая и не убывающая последовательность.
При таком определении признаю, что Ваш вариант верен, а мой ошибочен.

Добавлено через 6 минут
Gdez, Проверил , у Вас 233 -> YES , а 333 -> NO. Что при таком подходе к понятию возрастающая, дает правильный ответ. У меня же дает не верный ответ.

Добавлено через 32 минуты
Gdez, Я все таки слазил в интернет. Прав оказался iSmokeJC, 233 это неубывающая последовательность, а 123 это возрастающая последовательность, еще ее иногда называют строго возрастающей последовательностью. Поэтому просто условие задачи не достаточно четкое, какая все таки последовательность имеется ввиду. Если то, что Вы имеете ввиду, то нужно было сказать так
"Цифры данного числа образуют неубывающую или невозрастающую последовательность, но не состоит из трех одинаковых цифр"
Так как 333 тоже не убывающая и не возрастающая последовательность. В общем в интернете с этим понятием полный сумбур. Это уже не вопрос питона.
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
29.08.2020, 13:33
Интерпретаций этого куча.
Поэтому и написал "...если..." )))

Добавлено через 3 минуты
Если вы правы, то в моем коде надо второе условие и знак = в первом убрать)
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
29.08.2020, 13:36
Gdez, Из Википедии: https://ru.wikipedia.org/wiki/... 1%82%D1%8C
"Пусть имеется множество X {\displaystyle X} X, на котором введено отношение порядка.

Последовательность { x n } {\displaystyle \{x_{n}\}} \{x_n\} элементов множества X {\displaystyle X} X называется неубывающей, если каждый элемент этой последовательности не превосходит следующего за ним.

{ x n } {\displaystyle \{x_{n}\}} \{x_n\} — неубывающая ⇔ ∀ n ∈ N : x n ⩽ x n + 1 {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}\leqslant x_{n+1}} {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}\leqslant x_{n+1}}

Последовательность { x n } {\displaystyle \{x_{n}\}} \{x_n\} элементов множества X {\displaystyle X} X называется невозрастающей, если каждый следующий элемент этой последовательности не превосходит предыдущего.

{ x n } {\displaystyle \{x_{n}\}} \{x_n\} — невозрастающая ⇔ ∀ n ∈ N : x n ⩾ x n + 1 {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}\geqslant x_{n+1}} {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}\geqslant x_{n+1}}

Последовательность { x n } {\displaystyle \{x_{n}\}} \{x_n\} элементов множества X {\displaystyle X} X называется возрастающей, если каждый следующий элемент этой последовательности превышает предыдущий.

{ x n } {\displaystyle \{x_{n}\}} \{x_n\} — возрастающая ⇔ ∀ n ∈ N : x n < x n + 1 {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}<x_{n+1}} {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}<x_{n+1}}

Последовательность { x n } {\displaystyle \{x_{n}\}} \{x_n\} элементов множества X {\displaystyle X} X называется убывающей, если каждый элемент этой последовательности превышает следующий за ним.

{ x n } {\displaystyle \{x_{n}\}} \{x_n\} — убывающая ⇔ ∀ n ∈ N : x n > x n + 1 {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}>x_{n+1}} {\displaystyle \Leftrightarrow ~\forall n\in \mathbb {N} \colon x_{n}>x_{n+1}}

Последовательность называется монотонной, если она является неубывающей, либо невозрастающей.[1]

Последовательность называется строго монотонной, если она является возрастающей, либо убывающей.

Очевидно, что строго монотонная последовательность является монотонной.

Иногда используется вариант терминологии, в котором термин «возрастающая последовательность» рассматривается в качестве синонима термина «неубывающая последовательность», а термин «убывающая последовательность» — в качестве синонима термина «невозрастающая последовательность». В таком случае возрастающие и убывающие последовательности из вышеприведённого определения называются «строго возрастающими» и «строго убывающими», соответственно."


Все зависит от того, какая терминология используется, если та (что описывается в начале), то мое решение правильное, а Ваше не правильное.
Если используется терминология, которая описывается в конце, то ваше решение правильное, а мое не правильное.
Просто ТС в условии не уточняет, какая терминология используется.
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
29.08.2020, 13:40

По идее интереснее была бы эта задача для числа любой разрядности без использования массивов
0
 Аватар для Semen-Semenich
5233 / 3478 / 1175
Регистрация: 21.03.2016
Сообщений: 8,305
29.08.2020, 14:00
если число получается как строка(ввод, из файла читается)
Python
1
2
3
4
5
6
7
>>> a = '12333456'
>>> print(a == ''.join(sorted(a)))
True
>>> a = '1512333456'
>>> print(a == ''.join(sorted(a)))
False
>>>
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
29.08.2020, 14:06
Semen-Semenich,
Python
1
2
3
>>> a = '333'
>>> print(a==''.join(sorted(a)))
True
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
29.08.2020, 14:07
Бинго!!!
А мы тут формулы, условия и тп и тд))))

Добавлено через 46 секунд
Добавить проверку множества
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
29.08.2020, 14:08
Python
1
2
3
4
5
6
def foo(val: int) -> bool:
    lst = list(str(val))
    return (len(set(lst)) != 1) and (sorted(lst) == lst or sorted(lst, reverse=True) == lst)
 
 
print(foo(int(input())))
1
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
29.08.2020, 14:28
Semen-Semenich, У меня была такая мыслишка, но я не стал использовать этот вариант, так как использовал терминологию "возрастающая последовательность" как синоним строго возрастающей последовательности. Этот же вариант выдает YES и в случае неубывающей последовательности. Опять возвращаемся к вопросу, "Какую терминологию использует ТС? "
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
29.08.2020, 14:32
Viktorrus, вангую, ты не дождешься ответа на этот вопрос...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.08.2020, 14:32
Помогаю со студенческими работами здесь

Проверить истинность высказывания: «Цифры данного числа образуют возрастающую или убывающую последовательность»
Задание 3. Дано трехзначное число. Проверить истинность высказывания: «Цифры данного числа образуют возрастающую или убывающую...

Проверить истинность высказывания:"Цифры данного числа образуют возрастающую или убывающую последовательность
дано трехзначное число. Проверить истинность высказывания:&quot;Цифры данного числа образуют возрастающую или убывающую...

Проверить истинность высказывания: "Цифры данного трехзначного числа образуют возрастающую или убывающую последовательность"
Проверить истинность высказывания: &quot;Цифры данного трехзначного числа образуют возрастающую или убывающую последовательность&quot;.

Дано трехзначное число. Проверить истинность высказывания: "Цифры даного числа образуют возрастающую или убывающую последовательность"
Может есть чтото похоже?

Проверить образуют ли введенные числа возрастающую или убывающую последовательность
Ввести N вещественных чисел. Проверить образуют ли эти числа возрастающую или убывающую последовательность. Буду очень благодарен если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru