Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
 Аватар для conf
-11 / 5 / 0
Регистрация: 16.09.2013
Сообщений: 25

а так ли нужен этот ваш xor ?

19.09.2013, 01:08. Показов 1398. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
вот , встал вопрос (читаю шилдта , 3 издание) : а так ли нужен этот ваш xor ? шилдт пишет , что в С++ отсутствует функция xor (исключающая ИЛИ) , но ее можно создать собственными руками из стандартных функций
C++
1
not and or
меня немного смущает практическая сторона вопроса: а где , на практике , приходится применять xor ? чем он полезен ? как бэ , мне интересно знать полезность данной функции . в чем ее преимущество ?
вот , быдлокода накидал для понимания , но пока не вижу пользы:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#define sys_ system
#define ok return
#define display std::cout
#define eol std::endl
bool myFunc(bool a, bool b)
{
    ok (a or b) and not(a and b);
}
int main()
{
    int a,b;
    display << "input a: ";
    std::cin >> a;
    display << "input b: ";
    std::cin >> b;
    display << "a and b: " << (a and b) << eol;
    display << "a or b: " << (a or b) << eol;
    display << "not a: " << (not(a)) << eol;
    display << "not b: " << (not(b)) << eol;
    display << "a xor b: " << myFunc(a,b) << eol;
    sys_("pause");
    ok 0;
}
может быть , кто-нибудь объяснит полезные свойства xor ? желательно , случаи из реальной жизни , а не с теории или вики . спасибо .
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.09.2013, 01:08
Ответы с готовыми решениями:

Исключающее ИЛИ (XOR). Нужен пример операции побайтного XOR
Может кто-нибудь привести пример операции побайтного XOR?что-то вроде: есть данные,считанные из файла любого формата,эти данные по...

нужен ваш совет!
господа,помогите плиз Печать таблиц операций сложения и умножения для троичных чисел. таблица сложения имеет вид: + 0 1 2 0 0 1 2 ...

Нужен Ваш совет
Ребята,нужен совет.Есть лабораторные работы(методичка прикреплена) и я хочу послушать ваши предложение о том, на каком языке...

15
~ Эврика! ~
 Аватар для OhMyGodSoLong
1258 / 1007 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
19.09.2013, 01:35
меня немного смущает практическая сторона вопроса: а где , на практике , приходится применять xor ? чем он полезен ? как бэ , мне интересно знать полезность данной функции . в чем ее преимущество ?

может быть , кто-нибудь объяснит полезные свойства xor ? желательно , случаи из реальной жизни , а не с теории или вики . спасибо .
Проверка того, что выбрано нечётное количество вариантов? Не знаю... Ваш вопрос читается как "может быть, кто-нибудь объяснит полезные свойства сложения? желательно случаи из реальной жизни, а не с теории, вики или учебника арифметики. спасибо".

Просто логические связки — это настолько утилитарная вещь, что сложно дать как-то не казуистический ответ. Но вообще да, чаще всего условия объединяются исключительно && и ||. Видимо, поэтому для xor и не стали вводить отдельную операцию. Хотя, если учесть, что && и || можно вычислять лениво, в отличие от xor...
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
19.09.2013, 01:38
Цитата Сообщение от conf Посмотреть сообщение
отсутствует функция xor (исключающая ИЛИ)
В смысле boolean XOR (^^), а не bitwise XOR (^)?

Посмотрите обсуждение здесь: Logical xor operator in c++?
0
 Аватар для Just_Kawaii
1 / 1 / 1
Регистрация: 26.08.2013
Сообщений: 13
19.09.2013, 01:43
Почему отсутствует XOR? Кто сказал?

C++
1
2
3
4
if ( a ^ b )
{
c = a+ b;
}
Не знаю, у меня все работает... Если вы только не говорите о bool XOR.
0
 Аватар для conf
-11 / 5 / 0
Регистрация: 16.09.2013
Сообщений: 25
19.09.2013, 01:46  [ТС]
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Но вообще да, чаще всего условия объединяются исключительно && и ||. Видимо, поэтому для xor и не стали вводить отдельную операцию.
ясно . понятно .
Цитата Сообщение от gazlan Посмотреть сообщение
Посмотрите обсуждение здесь: Logical xor operator in c++?
прочитал .
C++
1
!=
сей ответ набрал 112 баллов .
Цитата Сообщение от gazlan Посмотреть сообщение
В смысле boolean XOR (^^), а не bitwise XOR (^)?
а в чем разница ? (своими словами)

Добавлено через 35 секунд
Цитата Сообщение от Just_Kawaii Посмотреть сообщение
Почему отсутствует XOR? Кто сказал?

C++
1
2
3
4
if ( a ^ b )
{
c = a+ b;
}
Не знаю, у меня все работает... Если вы только не говорите о bool XOR.
именно
0
19.09.2013, 01:49

Не по теме:


Вот вам на досуге почитать :)
http://ru.wikipedia.org/wiki/%... B8_C%2B%2B

1
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
19.09.2013, 01:54
Цитата Сообщение от conf Посмотреть сообщение
а в чем разница ? (своими словами)
См. мой вопрос (строчкой выше) - в типизации.
0
 Аватар для conf
-11 / 5 / 0
Регистрация: 16.09.2013
Сообщений: 25
19.09.2013, 01:58  [ТС]
Цитата Сообщение от gazlan Посмотреть сообщение
См. мой вопрос (строчкой выше) - в типизации.
если честно , то топик не о bitwisе-операциях , а о булевых значениях и операторах .
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
19.09.2013, 02:07
Цитата Сообщение от conf Посмотреть сообщение
то топик не о bitwisе-операциях , а о булевых значениях и операторах
Пройдите по предложенной ссылке - все ответы на ваши вопросы давно уже даны.
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
19.09.2013, 08:26
А что, есть такие языки где есть bool xor ?
0
19.09.2013, 15:50  [ТС]

Не по теме:

Цитата Сообщение от castaway Посмотреть сообщение
А что, есть такие языки где есть bool xor ?
Pascal
1
if true xor true then false;
Pascal
1
2
3
4
5
6
7
8
9
program logic;
var a,b:boolean;s:string;
begin
writeln('введите 1 a');readln(s);
writeln('введите 1 b');readln(s);
a:=s='1';b:=s='1';
if a xor b then writeln(a,' ',b,' true') else writeln(a,' ',b,' false');
readln;
end.

0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
19.09.2013, 17:02
Цитата Сообщение от conf Посмотреть сообщение

Не по теме:


Pascal
1
if true xor true then false;
Pascal
1
2
3
4
5
6
7
8
9
program logic;
var a,b:boolean;s:string;
begin
writeln('введите 1 a');readln(s);
writeln('введите 1 b');readln(s);
a:=s='1';b:=s='1';
if a xor b then writeln(a,' ',b,' true') else writeln(a,' ',b,' false');
readln;
end.

И что? В С++ так тоже можно записать, и это не говорит о том что в С++ есть логический оператор xor.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main() 
{ 
    bool a = true;
    bool b = true;
    std::cout << "a xor b = ";
    if ( a xor b ) {
        std::cout << "true\n";
    } else {
        std::cout << "false\n";
    }
}
0
 Аватар для conf
-11 / 5 / 0
Регистрация: 16.09.2013
Сообщений: 25
19.09.2013, 19:06  [ТС]
Цитата Сообщение от castaway Посмотреть сообщение
И что?
Вы , молодой человек , сюда зачем пришли ? Спорить ? Или проповедовать новую религию ?
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
19.09.2013, 19:10
Цитата Сообщение от conf Посмотреть сообщение
Вы , молодой человек , сюда зачем пришли ? Спорить ? Или проповедовать новую религию ?
Изначально я зашел сюда поинтересоваться, в каких-таких языках присутствует логический оператор XOR (замечу, что именно вам это было интересно).
После чего вы мне написали какую-то "белеберду", после чего я с вами не согласился, и возразил.
Что именно вас не устраивает?
1
 Аватар для conf
-11 / 5 / 0
Регистрация: 16.09.2013
Сообщений: 25
19.09.2013, 19:16  [ТС]
Цитата Сообщение от castaway Посмотреть сообщение
Изначально я зашел сюда поинтересоваться, в каких-таких языках присутствует логический оператор XOR (замечу, что именно вам это было интересно).
После чего вы мне написали какую-то "белеберду", после чего я с вами не согласился, и возразил.
Что именно вас не устраивает?
Перечитай тему и не набивай посты .
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
19.09.2013, 19:27
1. Это не функция.
2. В первом посте нет оператора XOR (^)
3. "а в чем разница ? (своими словами)" - твои слова, еще: "если честно , то топик не о bitwisе-операциях , а о булевых значениях и операторах ."
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.09.2013, 19:27
Помогаю со студенческими работами здесь

Нужен ваш совет
Вот делал свое дитё месяц и пару дней назад запустил Нужна ваша оценка дизайна. Дайте пожалуйста совет как улучшить и что добавить для...

Нужен ваш совет
у меня есть компьютер, старенький. Процессор intel dual core 2.0 Ghz. ОЗУ 1 GB. Можно ли установить еще 2 GB ОЗУ на этот компьютер?

Нужен совет ваш.
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,...

Нужен ваш совет
Добрый день. Появилась необходимость работы с клиентами не только в офисе, но и через WEB. Пока только начинаю знакомится с...

Нужен ваш совет
Ребят, почему не выходит елочка? var num = 4; var a = ; var b = ; var ce = a.push('*'); var d = b.pop(); for(var i = 1;i &lt;=...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru