Вход

Просмотр полной версии : ПР200. Вывод числа с нулем перед значением



nili`ch
21.09.2019, 00:06
Добрый вечер, есть у пр200 проблема, которая не устраивает заказчика. Прошу Форумчан поделиться опытом.
Задача 1:
вывод числа INT на экран c нулевым значением в десятках, т.е. при выводе времени "05:05" - выводится 5 : 5, что не очень не то чтобы некрасиво, иногда некоторым людям непонятно))
Задача 2:
то же самое задание переменной, т. е. как организовать задание времени с экрана, чтобы оно было в формате "05:05: а не 5 : 5,

Пробовал разделение десятков и единиц, не получается корректно, потому что ставлю ограничение в десятках 0-2, а в единицах 0-9, ну чтобы например установить время 19:05, но ведь получается что можно и 29:05 установить!!!))) если есть у кого рабочий пример реализации, прошу помощи!!!

Тема на форуме была "Не значащие нули при выводе целого числа. ПР200" ну какого то ни было примера я там не обнаружил, и только ответы - ищите на форуме, я искал, но к сожалению моему подсказок не нашел. Подскажите вообще это возможно? я понимаю что String -а нет и поэтому такие трудности, ну может кто сталкивался, или есть пример. СПАСИБО ЗАРАНЕЕ.

Сергей0308
21.09.2019, 00:25
Добрый вечер, есть у пр200 проблема, которая не устраивает заказчика. Прошу Форумчан поделиться опытом.
Задача 1:
вывод числа INT на экран c нулевым значением в десятках, т.е. при выводе времени "05:05" - выводится 5 : 5, что не очень не то чтобы некрасиво, иногда некоторым людям непонятно))
Задача 2:
то же самое задание переменной, т. е. как организовать задание времени с экрана, чтобы оно было в формате "05:05: а не 5 : 5,

Пробовал разделение десятков и единиц, не получается корректно, потому что ставлю ограничение в десятках 0-2, а в единицах 0-9, ну чтобы например установить время 19:05, но ведь получается что можно и 29:05 установить!!!))) если есть у кого рабочий пример реализации, прошу помощи!!!

Тема на форуме была "Не значащие нули при выводе целого числа. ПР200" ну какого то ни было примера я там не обнаружил, и только ответы - ищите на форуме, я искал, но к сожалению моему подсказок не нашел. Подскажите вообще это возможно? я понимаю что String -а нет и поэтому такие трудности, ну может кто сталкивался, или есть пример. СПАСИБО ЗАРАНЕЕ.

Ну с выводом на экран попроще будет: разбиваете на единицы и десятки и выводите на экран с помощью элемента динамический текст, там можно и 1 разряд использовать, нет ограничения в 2 разряда, как для инта. А разбиваем на десятки и единицы чтобы упростить реализацию, так можно и не разбивать, тогда динамический текст будет из 100 строк, при разбитии, два по 10 строк! Аналогично можно сделать и для задания переменой и если Вас устроит, например с шагом 5, то, соответственно и количество строк в комбобоксе уменьшится в 5 раз! Если шаг - единица, или 100 строк рисуйте или разделяйте на десятки и единицы, аналогично как для вывода делали! Соответственно 2 переменные придётся вводить, десятки и единицы, потом "соедините" их в программе.
Вот пример вывода часов, без гашения незначащих нулей:
44703
Вот пример назначения часов и минут без гашения незначащих нулей с шагом 5(для минут):
44704

dan75
21.09.2019, 10:14
29:05 -- это, конечно, некрасиво. Но ведь для часов незначащий нуль не так важен, как для минут. Формат "5:05" уже вполне себе похож на время, а не на хоккейный счёт. Поэтому часы можно задавать одной переменой, а минуты -- уже двумя. Кстати, с динамическим текстом можно не мудрить. Ограничение в 2 разряда для int, наверное, было в какой-то из предыдущих версий программы, но сейчас количество разрядов может быть от 1 до 11. Только что проверил.

Сергей0308
21.09.2019, 16:16
29:05 -- это, конечно, некрасиво. Но ведь для часов незначащий нуль не так важен, как для минут. Формат "5:05" уже вполне себе похож на время, а не на хоккейный счёт. Поэтому часы можно задавать одной переменой, а минуты -- уже двумя. Кстати, с динамическим текстом можно не мудрить. Ограничение в 2 разряда для int, наверное, было в какой-то из предыдущих версий программы, но сейчас количество разрядов может быть от 1 до 11. Только что проверил.

Это хорошо, если сняли ограничение в 2 разряда минимально(непонятно зачем такие проблемы искусственно создавали), часть проблем уже решена! И непонятно тогда зачем максимально 11 разрядов, когда их максимум может быть 10 и отрицательные значения в ОЛ не поддержаны!

AI!
21.09.2019, 17:19
а если время выводить просто числом?, например 5:35, как 5.35 и сделать функцию преобразования..

Сергей0308
21.09.2019, 17:27
а если время выводить просто числом?, например 5:35, как 5.35

Вы имеете ввиду в виде флоат, где запятая - разделитель часов и минут? Один разряд, резервируемый под знак минус пропадёт, так как время отрицательным не может быть, но все равно мне кажется так некрасиво будет!

nili`ch
21.09.2019, 20:46
Спасибо огромное всем кто откликнулся, сегодня буду пробовать, еще раз благодарю. потом выложу что получилось)))

nili`ch
21.09.2019, 20:54
:) да, действительно, про combo box я и не подумал, решение было простое и на поверхности))) еще раз спасибо)

Влад12
09.02.2021, 18:36
я делал так:
1 - Сравнивал переменную времени (минуты, секунды...) через GT.
2 - На самом дисплее выводил boolean текст. (False = 0)

Костыль, но работает)

53434