Войти
NeoBooker.ru
Добро пожаловать к нам в гости!
Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
  • Страница 1 из 1
  • 1
Модератор форума: Peter, DEMBEL, YURIY  
Разделение числа на разряды
CallistoДата: Вс, 24 Марта 2013, 06:42 | Сообщение # 1
Участник
Доброго времени суток.

Решила сделать простенький калькулятор по банковским владам :D
Все сделала, но, как всегда, этого оказалось мало. Конечное число решила разделить на разряды (тысячи, миллионы и т.д., т.е. сгруппировать по три символа).
И вот тут меня логика начала подводить, потому прошу помощи и совета :)
Хотя вот чувствую, что решение витает где-то рядом, а ухвптить его не получается...

И попутно вопрос: есть ли в NB округление дробного числа в большую сторону? Это бы мне сильно облегчило дело.


Пожалуйста, не надо ко мне на "Вы", а то чувствую себя бабулькой)
 
СообщениеДоброго времени суток.

Решила сделать простенький калькулятор по банковским владам :D
Все сделала, но, как всегда, этого оказалось мало. Конечное число решила разделить на разряды (тысячи, миллионы и т.д., т.е. сгруппировать по три символа).
И вот тут меня логика начала подводить, потому прошу помощи и совета :)
Хотя вот чувствую, что решение витает где-то рядом, а ухвптить его не получается...

И попутно вопрос: есть ли в NB округление дробного числа в большую сторону? Это бы мне сильно облегчило дело.

Автор - Callisto
Дата добавления - 24 Марта 2013 в 06:42
mishemДата: Вс, 24 Марта 2013, 07:18 | Сообщение # 2
Эксперт форума
NeoCommands

dec_Plus 1.9 (David Esperalta) > dec_NumeroConPuntosDeMiles
Разделить число на сотни, тысячи и т.д. Максимальное число 999.999.999.999.999.999).

Где то тема по моему еще была как сделать это с помощью НБ.

То что в голову сейчас приходит, это посчитать количество символов, разделить на 3.
Целое число умножить на 3.
Из исходного вычесть результат.
Полученное количество скопировать и удалить.
Остальные символы копировать по 3 и добавлять через пробел, точку, запятую к тем что были скопированы.
:D

Короче лови мысль. Я еще не спал.
:)

Добавлено (24 Марта 2013, 07:18)
---------------------------------------------

Цитата (mishem)
есть ли в NB округление дробного числа в большую сторону?

Если используешь команду Math, то просто поставь 0 в строке количество десятичных знаков после запятой.


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
СообщениеNeoCommands

dec_Plus 1.9 (David Esperalta) > dec_NumeroConPuntosDeMiles
Разделить число на сотни, тысячи и т.д. Максимальное число 999.999.999.999.999.999).

Где то тема по моему еще была как сделать это с помощью НБ.

То что в голову сейчас приходит, это посчитать количество символов, разделить на 3.
Целое число умножить на 3.
Из исходного вычесть результат.
Полученное количество скопировать и удалить.
Остальные символы копировать по 3 и добавлять через пробел, точку, запятую к тем что были скопированы.
:D

Короче лови мысль. Я еще не спал.
:)

Добавлено (24 Марта 2013, 07:18)
---------------------------------------------

Цитата (mishem)
есть ли в NB округление дробного числа в большую сторону?

Если используешь команду Math, то просто поставь 0 в строке количество десятичных знаков после запятой.

Автор - mishem
Дата добавления - 24 Марта 2013 в 07:18
mishemДата: Вс, 24 Марта 2013, 08:21 | Сообщение # 3
Эксперт форума
Цитата (mishem)
То что в голову сейчас приходит, это посчитать количество символов, разделить на 3

Ну как то так....

Добавлено (24 Марта 2013, 08:21)
---------------------------------------------
Или так...

Код
StrReplace "[TextEntry1]" " " "" "[TextEntry1]" ""
StrReplace "[TextEntry1]" "." "" "[TextEntry1]" ""
StrReplace "[TextEntry1]" "," "" "[TextEntry1]" ""
SetVar "[Temp]" "[TextEntry1]"
StrLen "[Temp]" "[Result]"
If "[Result]" ">" "3"
SetVar "[While]" "1"
   While "[Result]" ">" "0"
      SubStr "[Temp]" "[Result]-2" "3" "[Temp2]"
      StrDel "[Temp]" "[Result]-2" "3" "[Temp]"
      SetVar "[Result]" "[Result]-3"
      If "[While]" "=" "1"
         SetVar "[TextEntry1]" "[Temp2]"
         SetVar "[While]" ""
      Else
         SetVar "[TextEntry1]" "[Temp2].[TextEntry1]"
      EndIf
   EndWhile
EndIf
Прикрепления: Delit.zip (1.8 Kb)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
Сообщение
Цитата (mishem)
То что в голову сейчас приходит, это посчитать количество символов, разделить на 3

Ну как то так....

Добавлено (24 Марта 2013, 08:21)
---------------------------------------------
Или так...

Код
StrReplace "[TextEntry1]" " " "" "[TextEntry1]" ""
StrReplace "[TextEntry1]" "." "" "[TextEntry1]" ""
StrReplace "[TextEntry1]" "," "" "[TextEntry1]" ""
SetVar "[Temp]" "[TextEntry1]"
StrLen "[Temp]" "[Result]"
If "[Result]" ">" "3"
SetVar "[While]" "1"
   While "[Result]" ">" "0"
      SubStr "[Temp]" "[Result]-2" "3" "[Temp2]"
      StrDel "[Temp]" "[Result]-2" "3" "[Temp]"
      SetVar "[Result]" "[Result]-3"
      If "[While]" "=" "1"
         SetVar "[TextEntry1]" "[Temp2]"
         SetVar "[While]" ""
      Else
         SetVar "[TextEntry1]" "[Temp2].[TextEntry1]"
      EndIf
   EndWhile
EndIf

Автор - mishem
Дата добавления - 24 Марта 2013 в 08:21
CallistoДата: Пн, 25 Марта 2013, 00:59 | Сообщение # 4
Участник
Цитата (mishem)
То что в голову сейчас приходит, это посчитать количество символов, разделить на 3
Такая же мысль посетила :)

Цитата (mishem)
"[Result]-3"
Вот в чем моя ошибка заключалась, как-то и не подумалось, что подобная запись допускается :) и поэтому код разростался до безобразия.
Спасибо за помощь :)


Пожалуйста, не надо ко мне на "Вы", а то чувствую себя бабулькой)
 
Сообщение
Цитата (mishem)
То что в голову сейчас приходит, это посчитать количество символов, разделить на 3
Такая же мысль посетила :)

Цитата (mishem)
"[Result]-3"
Вот в чем моя ошибка заключалась, как-то и не подумалось, что подобная запись допускается :) и поэтому код разростался до безобразия.
Спасибо за помощь :)

Автор - Callisto
Дата добавления - 25 Марта 2013 в 00:59
  • Страница 1 из 1
  • 1
Поиск: