Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 2D-программирование

2D-программирование Вопросы, касающиеся двумерного программирования

Ответ
 
Опции темы
Старый 25.09.2005, 02:56   #1
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Радость

это конечо занимательно, но условие
if p<>0
я могу заменить на (с сохранением работоспособности)
if p
а вот условие
if p<>0 and q<>0
на
if p and q
заменить не могу.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 25.09.2005, 03:01   #2
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
p=1
q=1

if p And q Then Print "p"

waitkey()
у меня работает, не знаю что там у тя
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 25.09.2005, 03:02   #3
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
а так?
p=10
q=1

If p And q Then Print "p"

WaitKey()
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 25.09.2005, 03:07   #4
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
а так не работает, вероятно берется по последнему биту или хз мож только ноль или один.... надо протестить
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 25.09.2005, 03:39   #5
alcosholik
 
Сообщений: n/a
Странно.
p=10
q=2
if p and q then print "works"
waitkey()
работает.

p=20
q=2
if p and q then print "works"
waitkey()
не работает.

p=30
q=2
if p and q then print "works"
waitkey()
работает.

А если во всех примерах q=1, то не работает.
Вообще хз.
 
Ответить с цитированием
Старый 25.09.2005, 12:52   #6
jimon
 
Сообщений: n/a
потомучто так делать ненадо... :o
 
Ответить с цитированием
Старый 12.10.2005, 00:45   #7
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Как известно в матлогике AND=умножить, следовательно можно делать так:
p=20
q=2
If p*q Then Print "works"
WaitKey()
И все работает
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 12.10.2005, 01:10   #8
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
Originally posted by PAX@Oct 11 2005, 10:45 PM
Как известно в матлогике AND=умножить, следовательно можно делать так:
хмм странно, почему работает - не пойму... хотя почему оно не работало сначала тоже не пойму...

это ты ведь не битовое умножение делаешь, а арифметическое, это большая разница...

это просто глюк блица...
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 12.10.2005, 20:48   #9
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Смущение

Originally posted by PAX@Oct 11 2005, 10:45 PM
Как известно в матлогике AND=умножить, следовательно можно делать так:
p=20
q=2
If p*q Then Print "works"
WaitKey()
И все работает :)
Это делает код менее удобочитаемым. Подобно замене
if a=b
на
if not (a-B)
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 12.10.2005, 21:46   #10
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Вообще в битце считается 0 = False, любое число отличное от нуля = True, по этому и работает

Это делает код менее удобочитаемым.
Главное чтобы работало, помоему
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 12.10.2005, 23:10   #11
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Смущение

Originally posted by PAX@Oct 12 2005, 07:46 PM
Вообще в битце считается 0 = False, любое число отличное от нуля = True, по этому и работает

Ясно-понятно, иначе бы я и не затеял пост. А преобразование результата выражения, записанного в скобках условного оператора к bool происходит во всех нормальных языках.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 27.10.2005, 06:09   #12
Matt Merkulov
Модератор
 
Аватар для Matt Merkulov
 
Регистрация: 23.10.2005
Сообщений: 219
Написано 62 полезных сообщений
(для 247 пользователей)
хмм странно, почему работает - не пойму... хотя почему оно не работало сначала тоже не пойму...

это ты ведь не битовое умножение делаешь, а арифметическое, это большая разница...

это просто глюк блица...
Нет все работает правильно. Допустим A=1(%01), B=2(%10), A And B будет равно 0, хотя A<>0 и B<>0. При умножении результат равет 0, если хотя бы один из множителей равен нулю, иначе <>0 - True

А насчет удобочитаемости - это дело привычки.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 05:19.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com