округление числа в математических функциях
|
|
DoXeR | Дата: Воскресенье, 08 Мая 2011, 04:53 | Сообщение # 1 |
Любопытный
Группа: Проверенные
Сообщений: 53
Репутация: 0
Награды: 0
Статус: Offline
| Прочел тут статью http://mmbuilder.ru/publ/lessons/scripts/2/3-1-0-20 вопрос такой можно ли: Code y=x1 + x2 y$=CHAR(y) LoadText("Результат","y$") в "результат" выводить округленное число ? (чтобы всё, что будет идти после точки, отбрасывалось пробовал добавлять round=INT(y)+(y-INT(y)>0.5) но не округляет ((
Сообщение отредактировал DoXeR - Воскресенье, 08 Мая 2011, 04:59 |
|
| |
YURIY | Дата: Воскресенье, 08 Мая 2011, 12:17 | Сообщение # 2 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (DoXeR) пробовал добавлять Очень интересно, куда и как добавляете эту строку. Ибо она правильно делает своё дело. Code x1=0.2 x2=0.6 y=x1 + x2 y=INT(y)+(y-INT(y)>0.5) y$=CHAR(y) LoadText("Результат","y$")
Вечная память Андрею Сергееву!
|
|
| |
Alex3A | Дата: Понедельник, 09 Мая 2011, 01:38 | Сообщение # 3 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| DoXeR, Quote (DoXeR) чтобы всё, что будет идти после точки, отбрасывалось пробовал добавлять Code y=x1 + x2 y=INT(y) y$=CHAR(y) LoadText("Результат","y$") функция INT берет только целую часть числа 3.2 и 3.9 дадут 3, то есть все что после точки отбрасывается, как ты и хотел.Добавлено (09 Май 2011, 01:38) --------------------------------------------- Взять челую часть и округлить это совсем разные вещи.
|
|
| |
DoXeR | Дата: Четверг, 12 Мая 2011, 19:53 | Сообщение # 4 |
Любопытный
Группа: Проверенные
Сообщений: 53
Репутация: 0
Награды: 0
Статус: Offline
| Спасибо ребят, получилось:)) из секунд в дни перевожу.. Только склонение дни / дней , косяк))
|
|
| |
toizy | Дата: Четверг, 12 Мая 2011, 20:16 | Сообщение # 5 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
| И в чём косяк?
Жизнь оказалась не такой уж и забавной, как поначалу...
|
|
| |
mishem | Дата: Четверг, 12 Мая 2011, 20:19 | Сообщение # 6 |
Ветеран форума
Группа: Проверенные
Сообщений: 552
Репутация: 85
Награды: 12
Статус: Offline
| Quote (toizy) И в чём косяк? Догадайся. Похоже лишнее условие писать не хочется для склонения. 1 секунд, вместо 1 секунда. И т.д.
Не хочешь читать хелп?
Если хелп и форум не помогли, тогда все ответы здесь
|
|
| |
toizy | Дата: Четверг, 12 Мая 2011, 23:58 | Сообщение # 7 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
| Ну а что, грузынский русификацыя выйдет вполне ничего
Жизнь оказалась не такой уж и забавной, как поначалу...
|
|
| |
DoXeR | Дата: Пятница, 13 Мая 2011, 01:19 | Сообщение # 8 |
Любопытный
Группа: Проверенные
Сообщений: 53
Репутация: 0
Награды: 0
Статус: Offline
| Quote (mishem) Догадайся. Похоже лишнее условие писать не хочется для склонения. 1 секунд, вместо 1 секунда. И т.д. ну да, верно, 1 день / 5 дней только не то чтобы не хочется, скорее "не умеется")) с элементарным программированием вообще не дружу, долго вникаю, вот и пытаюсь освоить
|
|
| |
mishem | Дата: Пятница, 13 Мая 2011, 01:45 | Сообщение # 9 |
Ветеран форума
Группа: Проверенные
Сообщений: 552
Репутация: 85
Награды: 12
Статус: Offline
| DoXeR, Нужно создать условие при каких цифрах какое слово будет отображаться. У нас есть день, дня, дней. Прикинуть когда какое слово должно быть, подобрать логическое решение, и фсе.
Не хочешь читать хелп?
Если хелп и форум не помогли, тогда все ответы здесь
|
|
| |
DEMBEL | Дата: Пятница, 13 Мая 2011, 02:27 | Сообщение # 10 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| я уже занимался подобным условием ) х - число, у - текст ... Если (х = 1 или х = 21 или х=31) тогда у = день Иначе у = дней Если (х = 2 или х = 3 или х = 4 или х = 22 или х = 23 или х =24) тогда у = дня ... ... тупо но работает Добавлено (13 Май 2011, 02:27) --------------------------------------------- Code If (x=1|x=2|x=31) Then y$='день' Else y$='дней' End If (x=2|x=3|x=4|x=22|x=23|x=24) Then y$='дня' End
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
mishem | Дата: Пятница, 13 Мая 2011, 02:29 | Сообщение # 11 |
Ветеран форума
Группа: Проверенные
Сообщений: 552
Репутация: 85
Награды: 12
Статус: Offline
| Quote (DEMBEL) тупо но работает Принцип правильный. А если больше 31? Тоже перечислять? Например осталось до нового года.
Не хочешь читать хелп?
Если хелп и форум не помогли, тогда все ответы здесь
|
|
| |
DEMBEL | Дата: Пятница, 13 Мая 2011, 10:12 | Сообщение # 12 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| нет, можно брать последнюю цифру числа, если она 2,3,4 то... я делал в пределах месяца поэтому проще просто перечислить нужное
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |