Кстати, о пятнице, wdrakula, ты в курсе, что я вообще-то антисемит? Я сам только вчера узнал! Припёрлись ко мне два стариннейших (ещё с 80-х) друга - твои соплеменники, ну уселись в беседке, я приволок из дома Джека Дэниэлся, сидим квасим, а они затеяли бесконечное обсуждение вчерашней "прямой линии". Я уж и так пытался тему поменять и эдак - не, ни фига, вцепились друг в друга и доказывают непонятно кому, что он там сказал, а, главное, чего не сказал. Ну, когда длительность обсуждения превысила длительность самого события, я уж на крайнюю меру пошёл - напомнил им гарик по "спор о судьбах русского народа". Так один из них мне и выдал: "А антисемитам слова вообще не давали, притащи лучше ещё вискаря, если у тебя - нищеброда есть, конечно". Ну в общем, в ответ я включил антисемита и начал их троллить. Так и просидели до ночи, пока весь, что у меня был, вискарь не закончился. Но тема таки поменялась :)
я правильно понимаю в таком случае, если делаем с 1, то & логически станет как | ?
Если значения операндов только 1 и 0, то да, разница только в "ленивой логике", о которой говорил Сэдмэн. А вот для других значений операндов - это просто разные операции.
Ну тоесть если я пишу if(x>150&x<250&y>150&y<250.....) и такое же с двумя && то это приминительно к ситуации одинаково? Просто написать в условии "если (2&&1)" я никогда не посмею :)
Так, leks, вечер перестаёт быть томным. Берёте Кернигана и Ритчи и читаете (или не берёте, и не читаете - дело Ваше), а здесь глупости постить хватит. Надоело.
Так, leks, вечер перестаёт быть томным. Берёте Кернигана и Ритчи и читаете (или не берёте, и не читаете - дело Ваше), а здесь глупости постить хватит. Надоело.
Да, потрите пожалуйста мои сообщения чтоб народ не путался.
При использовании поразрядных логических операций в логических условиях результат получается такой же, как и при использовании логических операций && ||. И это понятно, так как логика у них одинакова!!
Всё таки без разницы (наверно) что & , что && (это не цитата).
Голова гудит, если ночь не спать и самогонку пить (всётаки надо выбирать || а не &&)
Почитал. Именно так и думал о смысле & приминительно к логическим элементам микросхем. && в мои представления не укладывалось :)
Вот такой пример мучал в вариациях, нигде неожиданного не получил. Вы правы, все и так это понимают, надо затереть сообщения в теме чтоб не отвлекать ерундой.
int a=5;
int b=10;
int c=20;
int d=0;
void setup()
{
Serial.begin(9600);
if(a>4&b>9&c>19&(a+b)>14){d=1;}else{d=0;}
Serial.println(d);
}
void loop()
{
}
Именно так и думал о смысле & приминительно к логическим элементам микросхем.
Тушите свет!!!
Я же Вам сказал, прочитать Кернигана и Ритчи и не постить глупости. Вы прочитали? Так какого рожна!
Прочитал. Прямых ответов не нашёл. Всё равно у меня сложилось мнение, что для логических утверждений которые могут быть истина или ложь при применении && и для чисел 1 и 0 при применении & результат при любых комбинациях будет одинаков. Ну нет в микросхемах 2, нет. Есть 0,1 и Z.
Неправда. Целиком его за такое время не прочитать. А пролистать в поиска прямого ответа, так это не сборник вопросо и ответов - делать так нет никакого смысла.
Неправда. Целиком его за такое время не прочитать. А пролистать в поиска прямого ответа, так это не сборник вопросо и ответов - делать так нет никакого смысла.
Ну вот абзац как раз как мне ответили. Правда понять как это утверждение "2" может быть истиной или нет мне не понять :)
А проверить?
Смысл то простой в операциях вида && есть только два значения 0 и 1, двойка же это не ноль? Значит будет TRUE
int x = 1;
int y = 2;
void setup() {
Serial.begin(115200);
}
void loop() {
if(x&&y){
Serial.println("Да, равно единице!");
}else{
Serial.println("В книге соврали!");
}
delay(2000);
}
int x = 1;
int y = 0;
void setup() {
Serial.begin(115200);
}
void loop() {
if(x&&y){
Serial.println("Да, равно единице!");
}else{
Serial.println("В книге соврали!");
}
delay(2000);
}
А проверить?
Смысл то простой в операциях вида && есть только два значения 0 и 1, двойка же это не ноль? Значит будет TRUE
int x = 1;
int y = 2;
void setup() {
Serial.begin(115200);
}
void loop() {
if(x&&y){
Serial.println("Да, равно единице!");
}else{
Serial.println("В книге соврали!");
}
delay(2000);
}
int x = 1;
int y = 0;
void setup() {
Serial.begin(115200);
}
void loop() {
if(x&&y){
Serial.println("Да, равно единице!");
}else{
Serial.println("В книге соврали!");
}
delay(2000);
}
Счас проверить не совсем удобно, но я так намёк понял, все числа кроме 0 это истина при применении &&. Забавно, с таким же успехом можно было бы утверждать, что все числа кроме 1 ложь :)Как числа-утверждения можно проверять на истинность?
Кстати, о пятнице, wdrakula, ты в курсе, что я вообще-то антисемит? Я сам только вчера узнал! Припёрлись ко мне два стариннейших (ещё с 80-х) друга - твои соплеменники, ну уселись в беседке, я приволок из дома Джека Дэниэлся, сидим квасим, а они затеяли бесконечное обсуждение вчерашней "прямой линии". Я уж и так пытался тему поменять и эдак - не, ни фига, вцепились друг в друга и доказывают непонятно кому, что он там сказал, а, главное, чего не сказал. Ну, когда длительность обсуждения превысила длительность самого события, я уж на крайнюю меру пошёл - напомнил им гарик по "спор о судьбах русского народа". Так один из них мне и выдал: "А антисемитам слова вообще не давали, притащи лучше ещё вискаря, если у тебя - нищеброда есть, конечно". Ну в общем, в ответ я включил антисемита и начал их троллить. Так и просидели до ночи, пока весь, что у меня был, вискарь не закончился. Но тема таки поменялась :)
Иоптваюмать. Ничо не понял.
Во-во, leks тоже :)
Кстати, о пятнице, wdrakula, ты в курсе, что я вообще-то антисемит?
Я, таки, апчём-то таком догадывался!
я правильно понимаю в таком случае, если делаем с 1, то & логически станет как | ?
Если одно утверждение в цепочке ложь, то и всё будет ложь при одинарном или двойном значке. Просто по привычке одинарный значок считал логическим "и".
если одно ложь - то да, все будет ложь. Разница начинается, когда все утверждения в цепочке - истина :)
2 && 1 = true, однако 2 & 1 = false
я правильно понимаю в таком случае, если делаем с 1, то & логически станет как | ?
Если значения операндов только 1 и 0, то да, разница только в "ленивой логике", о которой говорил Сэдмэн. А вот для других значений операндов - это просто разные операции.
Жаль бежать празновать дальше надо.
Просто я писал например : if (x>150&x<450) то... и всё выполнялось как задумывалось.
Чтоб разочароваться надо было как? Дочитал статью ниже - стало ещё хуже - пишут && только для boolean, & для цифр....
Начинает вроде доходить... - x>150 может дать 0 или 1, потом я его с соседним результатом как цифру так что ли? и результат непредсказуем?
Счас не могу практически проверить, раньше везде прокатывало и подумалось, что чистые формальности это всё.
Не успел прочитать прежде чем отправил. Буду думать.
Ну тоесть если я пишу if(x>150&x<250&y>150&y<250.....) и такое же с двумя && то это приминительно к ситуации одинаково? Просто написать в условии "если (2&&1)" я никогда не посмею :)
Так, leks, вечер перестаёт быть томным. Берёте Кернигана и Ритчи и читаете (или не берёте, и не читаете - дело Ваше), а здесь глупости постить хватит. Надоело.
Почистить, читаю. Спасибо за ответы.
Так, leks, вечер перестаёт быть томным. Берёте Кернигана и Ритчи и читаете (или не берёте, и не читаете - дело Ваше), а здесь глупости постить хватит. Надоело.
Да, потрите пожалуйста мои сообщения чтоб народ не путался.
Вот тут глянул ещё я.
http://cppstudio.com/post/300/
Цитата:
При использовании поразрядных логических операций в логических условиях результат получается такой же, как и при использовании логических операций
&& ||
. И это понятно, так как логика у них одинакова!!Всё таки без разницы (наверно) что & , что && (это не цитата).
Голова гудит, если ночь не спать и самогонку пить (всётаки надо выбирать || а не &&)
Всё таки без разницы (наверно) что & , что && (это не цитата).
Да уж...
IMHO это тема для песочницы, а не для раздела "Программирование".
Вы хотя бы это почитайте: http://arduino.ru/forum/obshchii/pesochnitsa-dlya-vsekh-novichkov#comment-410900
Всё таки без разницы (наверно) что & , что && (это не цитата).
Да уж...
IMHO это тема для песочницы, а не для раздела "Программирование".
Вы хотя бы это почитайте: http://arduino.ru/forum/obshchii/pesochnitsa-dlya-vsekh-novichkov#comment-410900
Почитал. Именно так и думал о смысле & приминительно к логическим элементам микросхем. && в мои представления не укладывалось :)
Вот такой пример мучал в вариациях, нигде неожиданного не получил. Вы правы, все и так это понимают, надо затереть сообщения в теме чтоб не отвлекать ерундой.
Именно так и думал о смысле & приминительно к логическим элементам микросхем.
Тушите свет!!!
Я же Вам сказал, прочитать Кернигана и Ритчи и не постить глупости. Вы прочитали? Так какого рожна!
Именно так и думал о смысле & приминительно к логическим элементам микросхем.
Тушите свет!!!
Я же Вам сказал, прочитать Кернигана и Ритчи и не постить глупости. Вы прочитали? Так какого рожна!
Прочитал. Прямых ответов не нашёл. Всё равно у меня сложилось мнение, что для логических утверждений которые могут быть истина или ложь при применении && и для чисел 1 и 0 при применении & результат при любых комбинациях будет одинаков. Ну нет в микросхемах 2, нет. Есть 0,1 и Z.
Впрочем надо это затереть всё, дабы не усугблядь.
Прочитал. Прямых ответов не нашёл.
Неправда. Целиком его за такое время не прочитать. А пролистать в поиска прямого ответа, так это не сборник вопросо и ответов - делать так нет никакого смысла.
Прочитал. Прямых ответов не нашёл.
Неправда. Целиком его за такое время не прочитать. А пролистать в поиска прямого ответа, так это не сборник вопросо и ответов - делать так нет никакого смысла.
Ну вот абзац как раз как мне ответили. Правда понять как это утверждение "2" может быть истиной или нет мне не понять :)
Причём тут абзац? Я Вам уже говорил, эту книгу надо читать целиком, разбирая и выполняя все примеры. Только тогда от неё будет толк.
А проверить?
Смысл то простой в операциях вида && есть только два значения 0 и 1, двойка же это не ноль? Значит будет TRUE
А проверить?
Смысл то простой в операциях вида && есть только два значения 0 и 1, двойка же это не ноль? Значит будет TRUE
Счас проверить не совсем удобно, но я так намёк понял, все числа кроме 0 это истина при применении &&. Забавно, с таким же успехом можно было бы утверждать, что все числа кроме 1 ложь :)Как числа-утверждения можно проверять на истинность?
И при || тоже )))