Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];

Вниз

Складывание логических переменных   Найти похожие ветки 

 
Zhekson   (2008-10-31 10:53) [0]

Столкнулся с ситуацией, когда необходимо прибавлять к переменной логического типа значение false. Простое складывание приводит к ощибке:

Var
 negative: boolean = false;

negative := negative + false;
- несовместимость типов.

почему?


 
Sorry   (2008-10-31 10:56) [1]

Если переменные логического типа, то и операция сложения, естественно, должна быть особая, логическая :)

Данный вопрос проходят ещё в школе, интернет в помощь


 
sniknik ©   (2008-10-31 10:59) [2]

нет такого понятия как 2false или 3true... а несовместимость показывает не на типи между собой а с операцией над этим типом.


 
MsGuns ©   (2008-10-31 11:00) [3]

Если переменная именно логическая, т.е. имеет только два значения, то и операции с такой переменной должны быть логическими: OR, AND, XOR


 
Сергей М. ©   (2008-10-31 11:01) [4]

Складывание, прибавляние)..

Может все-таки сложение ? Речь-то все же, наверно, идет о математической операции, а не о матер.сущностях..


> почему?


Потому что в D7 оператор "+" подразумевает арифметическое сложение и конкатенацию строк. А тебе, видимо, нужно логическое сложение. А для логического сложения предназначен оператор "OR".


 
Zhekson   (2008-10-31 11:01) [5]

Sorry   (31.10.08 10:56) [1]

я удивлён, что ты не подсказал обратиться в библиотеку, ведь там есть ответы на все вопросы... Вот только форум  это место где можно давать и получать вопросы и ответы... Ты не сделал ни того, ни другого, т.к. этот ответ я и без тебя знал.

Спасибо за помощь.


 
Zhekson   (2008-10-31 11:05) [6]

MsGuns ©   (31.10.08 11:00) [3]

спасибо

Сергей М. ©   (31.10.08 11:01) [4]
согласен, всё-таки СЛОЖЕНИЕ!!!

спасибо.


 
Sorry   (2008-10-31 11:08) [7]


> Ты не сделал ни того, ни другого, т.к. этот ответ я и без
> тебя знал.

Если бы ты знал об OR, AND, XOR, этот бы вопрос тут не появился. Однозначно


> Спасибо за помощь.

Только пожалуйста без "сейчас заплачу" :) Каков вопрос - таков ответ (C)


> что ты не подсказал обратиться в библиотеку

Ну я бы посоветовал сразу в школу, в яндекс или всё-таки в вики:
http://ru.wikipedia.org/wiki/Булева_алгебра
http://ru.wikipedia.org/wiki/Битовые_операции

Подано на высоком уровне, но даже если читать наискосок, суть уловить можно. Рекомендую прочесть. Рекомендую без издёвок, просто советую


 
MsGuns ©   (2008-10-31 11:14) [8]

>Sorry   (31.10.08 10:56) [1]
>Если переменные логического типа, то и операция сложения, естественно, должна быть особая, логическая :)

Логические операции можно выполнять и не с логическими типами.


 
Zhekson   (2008-10-31 11:29) [9]

Sorry   (31.10.08 11:08) [7]
о каких издёвках ты говоришь??? называй вещи своими именами )))

Одно время, на этом форуме, в основной тематике, было полно посетителей, которые задавали вопросы, отвечали на них и получали ответы... сейчас и в начинающих чувствуешь себя неуютно, т.к. каждый вопрос и каждое слово "сканируется" на предмет недочётов и суть вопроса уже никому неинтересна... Главное показать, что дающий ответ это знает и умеет, а задающий вопрос пришёл с протянутой рукой, за помощью...

вы так самореализовываетесь в связи с непонимание вашей персоны в реальной жизни???


 
Сергей М. ©   (2008-10-31 11:35) [10]


> Zhekson   (31.10.08 11:29) [9]


Времена-то меняются, странно что ты этого не замечаешь)

Только вот девиз неизменен - "Талантам надо помогать, бездарности пробьются сами")


 
Zhekson   (2008-10-31 11:44) [11]

Сергей М. ©   (31.10.08 11:35) [10]
если бы не замечал, то вряд ли говорил бы об этом.


> "Талантам надо помогать, бездарности пробьются сами")

именно поэтому можно пропускать мимо ушей мои бездарные вопросы... я прекрасно понимаю, что это простейший вопрос, который является основой программирования, но до сих пор я с ним не сталкивался, а если когда-то и сталкивался, то просто не запомнил, т.к. не было необходимости.


 
Anatoly Podgoretsky ©   (2008-10-31 11:54) [12]

Хуже, данный вопрос даже не относится к программировани, а к булевой алгебре.


 
Рамиль ©   (2008-10-31 11:58) [13]


> я прекрасно понимаю, что это простейший вопрос, который
> является основой программирования

А зачем программируешь, не прочитав основы?


 
Сергей М. ©   (2008-10-31 12:00) [14]


> прекрасно понимаю, что это простейший вопрос, который является
> основой программирования


Ну и чего стОит это твое понимание, если ты тут же ринулся задавать вопрос, ни продумав его толком, ни посмотрев документацию ?

А ведь постановка вопроса - это 90% ответа на него)

Мож и вопрос-то сам собой бы рассосался, проделай ты это ..


 
Zhekson   (2008-10-31 12:06) [15]

Anatoly Podgoretsky ©   (31.10.08 11:54) [12]
а булева алгебра не основа программирования???

Рамиль ©   (31.10.08 11:58) [13]

> А зачем программируешь, не прочитав основы?

я же написал, что в своё время читал, но т.к. с такой задачей никогда не сталкивался, то  подзабыл... Книги под рукой нет, поэтому задал вопрос тем, кто точно знает как это сделать. Не учёл, что отвечающие сейчас, зачастую, не преследуют цель помочь.

Сергей М. ©   (31.10.08 12:00) [14]
я, в основном, сначала делаю, потом думаю... характер у меня такой, но про этом полностью согласен, что
> А ведь постановка вопроса - это 90% ответа на него)


 
Ega23 ©   (2008-10-31 12:16) [16]


> Логические операции можно выполнять и не с логическими типами.


Это, интересно, какие? 1 or 2 = 3? Так это "двоичное сложение".


 
Правильный$Вася   (2008-10-31 12:22) [17]


> а булева алгебра не основа программирования???

нет, это основы обычной логики


 
Anatoly Podgoretsky ©   (2008-10-31 12:27) [18]

> Zhekson  (31.10.2008 12:06:15)  [15]

Форум в переводе Базарная площадь и близкое, цели у форумов такой нет, на форумы ходят не помогать, а общаться, а помогаю по делу и по морде. Не всем помогают.


 
Ega23 ©   (2008-10-31 12:28) [19]


> Не учёл, что отвечающие сейчас, зачастую, не преследуют
> цель помочь.


Ну раз ты такой мнительный, то может и не надо вопросы задавать?
Тем более, что вопрос действительно из песочницы.


 
Anatoly Podgoretsky ©   (2008-10-31 12:28) [20]

> Ega23  (31.10.2008 12:16:16)  [16]

Двоичное (битовое), но не логическое.

True OR True <> 2True


 
Сергей М. ©   (2008-10-31 12:29) [21]


> Zhekson   (31.10.08 12:06) [15]


> сначала делаю, потом думаю


Ну так вот одной из неочевидных задач форума, imho, как раз и является помощь в осознании неверности этой последовательности)

Уж как ни оценвай, но в [1] была вполне резонная попытка задать вектор для "думалки". а не для "делалки")


 
Anatoly Podgoretsky ©   (2008-10-31 12:29) [22]

Опечатался, хотел напечатать

True + True <> 2True


 
Palladin ©   (2008-10-31 12:30) [23]


> а булева алгебра не основа программирования???

да как бы нет... это раздел дискретной математики, насколько мне известно...


 
Anatoly Podgoretsky ©   (2008-10-31 12:31) [24]

Булева алгебра - это логика высказываний, где в результате выссказывания имеет результат ИСТИНА и ЛОЖЬ.
Говорить, что математика основа программирования неверно, хоть и парадоксально. Основа программирования логика.


 
Zhekson   (2008-10-31 12:32) [25]

Сергей М. ©   (31.10.08 12:00) [14]

Если честно, то я на полном серьёзе считаю, что память человека - это своеобазный сосуд, который заполнив какой-либо одной информацией, можно ограничить доступ для другой, возможно более важной... Эту мою теорию я аргументирую отрешённостью от всего мирского гениев, в каком-либо роде деятельности и главенство бездарностей(относительных). Ведь начальники, в основном, это не самые лучшие специалисты в своей области, а люди умеющие добиваться результата, вне зависимости от отклонения от тематики задачи.


 
Anatoly Podgoretsky ©   (2008-10-31 12:33) [26]


> Ega23 ©   (31.10.08 12:28) [19]

Ты с ним разве еще не знаком, он из тех кому не отвечают, если знают, попытки просветительной деятельности успеха не имеют.


 
Правильный$Вася   (2008-10-31 12:41) [27]


> Ведь начальники, в основном, это не самые лучшие специалисты
> в своей области, а люди умеющие добиваться результата, вне
> зависимости от отклонения от тематики задачи.

хочешь стать начальником, брось программирование


 
Сергей М. ©   (2008-10-31 12:42) [28]


> Zhekson   (31.10.08 12:32) [25]


Про начальников-то как раз все предельно ясно - кто не начальник, тот дурак .. и наоборот)


 
ASoft   (2008-10-31 12:49) [29]


> Anatoly Podgoretsky ©   (31.10.08 12:31) [24]
>
......Основа программирования логика.

Бальзам на душу:)


 
Zhekson   (2008-10-31 12:50) [30]

Anatoly Podgoretsky ©   (31.10.08 12:33) [26]
Анатолий, ну не сердитесь вы так...

> а общаться, а помогаю по делу и по морде.


извините, конечно, за мою наглость задавать простые вопросы в категории для начинающих, но ведь никто не заставляет отвечать на них... Я честно задал вопрос из которого видно, что мне не важна суть, мне важен результат. И я не понимаю, почему я не имею на это права??? Да, гораздо лучше знать суть, тогда и результат прийдёт, но как быть если у меня "сосуд маленький" ???


 
Zhekson   (2008-10-31 12:55) [31]

если я начну разбираться во всех тонкостях программирования, то я могу разучиться говорить )))


 
Правильный$Вася   (2008-10-31 12:56) [32]


> как быть если у меня "сосуд маленький" ???

тренировать, растягивать, апгрейдить
или забить и заняться другим


 
DevilDevil   (2008-10-31 12:57) [33]

> Zhekson   (31.10.08 10:53) 
не принимай близко сердцу. То ли начинающих на форуме много, то ли дураков, то ли "Мастерам" не хватает чувства собственной значимости... пофиг на причину. Тут либо забивать на тонны флуда в ветке, либо найти человека знающего и спрашивать у него напрямую.

имхо в твоём вопросе нет ничего криминального, а реакция слегка неадекватна.

Расскажи, что за задача, в которой есть необходимость складывать boolean-ы ?

Определить числовое значение boolean-а, enum-а или char-а можно с помощью "функции" ord(value) или прямым преобразованием в byte: byte(Value).

ord(false) = 0
ord(true) = 1
ord(#13) = 13
ord(poScreenCenter) = 4

Ещё над ordinal-типами применимы функции Inc, Dec, Succ, Pred, Odd, High, Low.

В моей практике был случай, когда по комбинации Enum-ов и boolean-ов нужно было получить значение. Множественный case - вариант неахти; помог вариант массива констант, индекс в котором расчитывался путём перемножения и сложения ord() значений Enum-ов и boolean-ов.


 
Сергей М. ©   (2008-10-31 13:01) [34]


> как быть если у меня "сосуд маленький" ?


Он у тебя настолько маленький, что уже 30-й пост в топике, а ты все еще никак не домыслишь, что пора бы уже дать развернутое описание этой самой ситуации, с которой ты столкнулся, а трындеж о превратностях судьбы и характере оставить на потом  ?


 
Palladin ©   (2008-10-31 13:03) [35]

:)))


 
Ega23 ©   (2008-10-31 13:06) [36]


> но как быть если у меня "сосуд маленький" ???


Пару лет назад был популярный спам об увеличении сосута, на сколько-то там дюймов в месяц.


 
Сергей М. ©   (2008-10-31 13:07) [37]


> могу разучиться говорить


Как можно разучиться тому чему еще даже не научился - вот это понятно)


 
Anatoly Podgoretsky ©   (2008-10-31 14:03) [38]

> Zhekson  (31.10.2008 12:50:30)  [30]

Право имеешь, но как я сказал, не всем отвечают, видимо ты попал на этот случай.


 
Jeer ©   (2008-10-31 15:01) [39]


> Право имеешь, но как я сказал, не всем отвечают, видимо
> ты попал на этот случай.
>


Но парень терпеливый - не шлет сразу на.. дальний перекресток за нравоучения.
Может есть шанс ?


 
Германн ©   (2008-10-31 15:04) [40]


> Zhekson   (31.10.08 12:06) [15]
>
> Anatoly Podgoretsky ©   (31.10.08 11:54) [12]
> а булева алгебра не основа программирования???
>

Основа, основа успокойся.
Такая же основа как и простая алгебра, такая же как и арифметика для начальных классов школы, такая же как русский язык.
Но учить это надо было в школе, а не на этом форуме. А уж забывать сколько будет 2*2, даже если много лет не приходилось умножать числа вручную - это уже слишком!
Примите и прочь.



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.55 MB
Время: 0.006 c
4-1202161064
GanibalLector
2008-02-05 00:37
2008.12.14
RAS, TAPI или WinApi


2-1225894334
svb
2008-11-05 17:12
2008.12.14
из Excel в DBEhgrid


9-1176042275
Cerberus
2007-04-08 18:24
2008.12.14
Что лучше для создания 3д моделей Maya или 3D Max


6-1196112678
Costy
2007-11-27 00:31
2008.12.14
подключения через WI FI посредством стандартных компонентов


15-1223848139
KilkennyCat
2008-10-13 01:48
2008.12.14
Семен Сорокин, урррра!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский