| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > ОГРАНИЧИТЬ КОЛЛИЧЕСТВО СИМВОЛОВ ПОСЛЕ ЗАПЯТОЙ |
| Автор: NikoLLa 25.9.2005, 21:18 |
| Товарищи, объясните пожалуйста как ограничить в vb колличество символов, которые нужно вывести на экран. Допустим есть число 3,141516, а надо вывести 3,14. Заранее спасибо! |
| Автор: Spawn™Production® 25.9.2005, 21:48 | ||
| mid "Обрабатываемый текст", номер символа с которого начинаем, сколько символов берём. Например:
|
| Автор: Exception 25.9.2005, 22:13 | ||
а чтобы не только с однозначным работало:
писал вслепую, проверьте Добавлено @ 22:17 ЗЫ число пи = 3.1415926535.. если нады |
| Автор: Akina 25.9.2005, 23:36 |
| А еще есть гениальная функция Format |
| Автор: cardinal 26.9.2005, 13:32 |
| Которая имхо не очень подходит для того, чтобы не давать ввести больше, чем две цифры после запятой (думаю именно это хочет NikoLLa). Можно еще попробовать Microsoft Masked Edit Box и поставить там Mask Property = ###,## например, но и это тоже не очень... Наверно единственное, что остается так это что-нибудь по типа того, что предложил Run-time error... |
| Автор: Akina 26.9.2005, 14:13 | ||
ну... я ориентировался на исходный пост... впрочем наверное ты прав окажешься |
| Автор: Guest 26.9.2005, 14:54 | ||||
NikoLLa
Ну, а так не проще будет? |
| Автор: Гость_Voldemar2004 26.9.2005, 14:56 | ||||
NikoLLa
Ну, а так не проще будет? Извините за Guest, просто сейчас на работе сижу |
| Автор: Exception 26.9.2005, 15:34 |
| странные вы все.. волдемар, спаун, ваши ф-ции ведь не работают, если в числе больше одного знака. надо ещё ИнСтр юзать |
| Автор: Spawn™Production® 26.9.2005, 16:29 |
| Run-time error, нам никто чёткой задачи не ставил... спросили как можно сделать, мы показали... Добавлено @ 16:31 К тому же, если всё правильно делать, то в число невозможно будт ввести больше 1 знака... |
| Автор: NikoLLa 26.9.2005, 17:03 |
| |
| Автор: cardinal 26.9.2005, 17:15 | ||||
Я бы сделал так:
Поизучай этот код и поймешь как это сделать... |
| Автор: Spawn™Production® 26.9.2005, 17:19 | ||
NikoLLa, так бы сразу и сказали
|
| Автор: Gannibal 26.9.2005, 17:59 | ||||
Spawn™Production® слушай код у тебя нерабочий, когда задаёшь количество знаков после точки так выводит на один меньше ;) поправь
NikoLLa а зачем тебе числа после запятой обрезать но если обрезаешь значит округлять надо нет? или ненадо? |
| Автор: NikoLLa 26.9.2005, 18:32 |
| M.E.G.U.S Нет округлять не надо. Spawn™Production®, M.E.G.U.S Но прога не выводит первого знака(перед запятой )Как сделать |
| Автор: Spawn™Production® 26.9.2005, 18:38 |
| M.E.G.U.S, да уж, я потом исправил, но сюда почему-то заостил не тот вариант... NikoLLa, как это не выводит ? Всё там выводится, оно просто не может не вывестись, так как в функции mid стоит установка начинать обрезку с первого символа... |
| Автор: NikoLLa 26.9.2005, 18:42 |
| Spawn™Production®, M.E.G.U.S,Эта прога выводит символы после первой цифры, а надо после запятой. Попробуйте ввести не 3.1415926535, а, допустим, "5698,2365" |
| Автор: cardinal 26.9.2005, 20:14 |
| NikoLLa, помести на форму один TextBox, скопируй мой код и попробуй... |
| Автор: Spawn™Production® 26.9.2005, 20:57 |
| Автор: Exception 26.9.2005, 21:19 |
| вообще-то мой код должен отлично работать.. только temp+2 надо заменить temp+Inputbox("сколько обрезать?") ЗЫ надо бы прежде чем проги писать, язык поучить. ЗЗЫ зачем, если не секрет, тебе так над числами извращаться? |
| Автор: bom 26.9.2005, 23:03 | ||
А вот еще вариант
|
| Автор: cardinal 26.9.2005, 23:22 |
| Если введены именно цифры, то это вариант... |
| Автор: Naghual 27.9.2005, 09:57 | ||
Мда... Много всего написано...
PS: Тут есть определенные излишества, но все зависит от реализации. PPS: Необходима форма с двумя Текстбоксами, одним Капшионом и одним Коммандбуттоном. В первый текстбокс забивается оригинальное число во второй количество оставляемых символов. |
| Автор: NikoLLa 27.9.2005, 21:00 |
| |