Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
Всем добрый день. Ударило мне в голову - мол хочу изучить VBA, поставил себе цель, сел изучать, купил книжку итд. И вот в конце одной из первых глав в книжке такое задание. авторДля закрепления материала этой и предыдущей глав советуем читателю написать программу, позволяющую определить значения, для которых выполняется условие CInt(x) = Int(x) = Fix (x) = Round (x). переменная x принимает значения -1.8 , -1.25 , 1.27, 1.68 Вот код того, что я сделал авторSub aaa() Dim c As Single Dim x As Single Dim a As Boolean x = 1.27 a = CInt(x) = Int(x) And Round(x) = Fix(x) And Round(x) = Int(x) c = CInt(x) MsgBox (a) End Sub вопрос такой, почему при прогонке программы пошагово и наводе курсора на функции , при расчете переменной "а" - все выдают сообщения типа CInt (x) = 1 итд. Все, кроме функции Round. Расчитывает программа правильно вроде как, но вот этот Раунд меня напрягает. Это нормально или я что то где то накосячил*? И еще вопрос - в чем отличие функций CInt от функции Int ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 14:10 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
ДаркТМ, Порбуйте вот так Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 14:16 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
ДаркТМ И еще вопрос - в чем отличие функций CInt от функции Int У вас пытливый ум? Выполните пошагово Код: plaintext 1. ДаркТМУдарило мне в голову - мол хочу изучить VBA, поставил себе цель, сел изучать, купил книжку итд. Это хорошо, но прочтите пожалуйста это и это ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 14:17 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
ДаркТМВсе, кроме функции Round. Расчитывает программа правильно вроде как, но вот этот Раунд меня напрягает Среда принимает решения, просчитывать или не просчитывать подсказку, основываясь на одной ей ведомых принципах. Иногда просчитывает даже пользовательские функции. Ничего страшного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 14:19 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
big-dukeДаркТМ, Порбуйте вот так Код: plaintext Вот так, при значении 1.27 выдается Фолс. Хотя по идее должна выдаваться Тру, ибо при 1.27 все функции округляют до 1. ЗЫ Спасибо, разобрался с разницей в функциях округления. Чтобы удостовериться - Cint - в отличии от Int - всегда возвращает нам переменную типа Integer*? Именно поэтому CInt(123456789.55) выдает Overflow*? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 16:06 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
ДаркТМСпасибо, разобрался с разницей в функциях округления. Чтобы удостовериться - Cint - в отличии от Int - всегда возвращает нам переменную типа Integer*? Именно поэтому CInt(123456789.55) выдает Overflow*? Верно. Фактически - это разные классы функций. Int - округление, CInt - преобразование типа (походу делающее округление), как и CDate, CSng и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 16:11 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
ДаркТМ, вот еще для понимания Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 16:14 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
ДаркТМbig-dukeДаркТМ, Порбуйте вот так Код: plaintext Вот так, при значении 1.27 выдается Фолс. Хотя по идее должна выдаваться Тру, ибо при 1.27 все функции округляют до 1. Потому что БигДюк впервые на моей памяти перегрелся... там начнется сравнение 1 с True, а это не одно и то же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 16:15 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
'CInt отбрасывает дробную часть любого заданного им числа, возвращая целое число, также выполняет привычное округление числа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 16:44 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
Ципихович Эндрю'CInt отбрасывает дробную часть любого заданного им числа, возвращая целое число, также выполняет привычное округление числа Не вводи человека в заблуждение, не разобравшись в вопросе. CInt именно что округляет, а не отбрасывает дробную часть (это делает Fix) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 16:48 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, 'Функции Fix и Int отбрасывают дробную часть любого заданного им числа, возвращая 'целое число. Но, в отличие от функций CInt и CLng, они не выполняют привычного округ- 'ления — например, Int (4.989) возвращает 4, а не 5 'Результаты этих двух функций отличаются только при обработке отрицательных чисел. 'Тогда Int возвращает ближайшее к значению аргумента меньшее целое число, a Fix просто 'отбрасывает дробную часть аргумента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 16:59 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
Ципихович Эндрю'Функции Fix и Int отбрасывают дробную часть любого заданного им числа, возвращая 'целое число. Но, в отличие от функций CInt и CLng, они не выполняют привычного округ- 'ления — например, Int (4.989) возвращает 4, а не 5 'Результаты этих двух функций отличаются только при обработке отрицательных чисел. 'Тогда Int возвращает ближайшее к значению аргумента меньшее целое число, a Fix просто 'отбрасывает дробную часть аргумента. Вот именно. К CInt это не относится, она не отбрасывает, а округляет дробную часть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 17:03 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, как Вы умеете доходчиво объяснять, Спасибо большое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 17:17 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
Спасибо всем большое! Вспоминая школьные уроки паскаля, я делаю вывод, что Fix делает тоже самое, что и функция Trunk -) Еще раз большое спасибо, правда, мне так кажется - это далеко не последний мой запрос о помощи и советах на этом форуме :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 21:06 |
|
||
|
Вопрос
|
|||
|---|---|---|---|
|
#18+
ДаркТМСпасибо всем большое! Вспоминая школьные уроки паскаля, я делаю вывод, что Fix делает тоже самое, что и функция Trunk -) Еще раз большое спасибо, правда, мне так кажется - это далеко не последний мой запрос о помощи и советах на этом форуме :) Всегда пожалуйста. Приятно, когда человек ХОЧЕТ разобраться. Только тему топика пишите адекватно, мы ведь просматриваем весь список топиков, приходится либо напрягаться и вспоминать, о чем там речь, либо просто забивать на топик. Ну или как-то вот так: http://sql.ru/forum/actualthread.aspx?tid=759122 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2010, 23:32 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=36711310&tid=2159608]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 12ms |
| total: | 142ms |

| 0 / 0 |
