powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Divide by zero
5 сообщений из 5, страница 1 из 1
Divide by zero
    #32900905
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то я ничего не понимаю. Имеем такой вот код:
Код: plaintext
1.
2.
3.
4.
5.
long l1,l2,l3

SetNull(l2)

l3 = l1/l2

Согласно мануалу

Calculations with NULLWhen you form an arithmetic expression that contains a NULL value, the expression becomes NULL. Thinking of NULL as undefined makes this easier to understand.

Почему это приводит к divide by zero? Пробовал в 6, 9 - одно и тоже.
...
Рейтинг: 0 / 0
Divide by zero
    #32901751
rcryo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если сделать так:
Код: plaintext
1.
2.
3.
4.
long l1,l2,l3
l2= 1 
SetNull(l2)
l3 = l1/l2
то все работает, как надо. В PB10 тоже самое
...
Рейтинг: 0 / 0
Divide by zero
    #32901808
Guest_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Интересно, а разве может переменная типа long быть равна Null ?
...
Рейтинг: 0 / 0
Divide by zero
    #32901839
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Абсолютно любая переменная может иметь значение Null. И, кстати, на равенство Null не проверяют ;).
____________________________________
- Гарфилд, мышь!
- Спасибо, я сыт!
...
Рейтинг: 0 / 0
Divide by zero
    #32902126
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rcryoА если сделать так:long l1,l2,l3
Код: plaintext
1.
2.
l2= 1 
SetNull(l2)
l3 = l1/l2
rcryoто все работает, как надо. В PB10 тоже самое
Да, действительно.
А если написать
Код: plaintext
1.
2.
l2= 0 
SetNull(l2)
l3 = l1/l2
то будет ошибка.
Отсюда мораль - при вычислении билдер делает что-то типа
Код: plaintext
1.
2.
l3.value = l1.value/l2.value
l3.isnull = l1.isnull || l2.isnull
Нда, умно, умно...
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Divide by zero
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]