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

Написать функцию, реализующую операцию побитового xor

08.06.2016, 20:45. Показов 2414. Ответов 16
Метки c++, си (Все метки)

Студворк — интернет-сервис помощи студентам
дали задание не могу понять даже что делать
подскажите по заданию литературу или сайт какой или ветку на форуме



При написании функций можно использовать только следующее:
- целочисленные константы;
- целочисленные аргументы функций и автоматические (локальные)переменные;
- операции ~ ! * + - (тип) sizeof << >> & ^ |. Группы операций расположены в порядке убывания приоритета.

Запрещается:
- использовать такие операторы как if, do, while, for, switch и т.п. ;
- использовать макросы или какие либо функции;
- использовать другие операции такие как &&, ||, ?: ;
- использовать типы данных кроме целочисленных;
- использовать массивы, структуры и объединения.


вот само задание

unsigned bitXor(unsigned x, unsigned y);
bitXor возвращает x^y (исключающее или)
Пример: bitXor(4, 5) = 1
Допустимые операции: ~ & |
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.06.2016, 20:45
Ответы с готовыми решениями:

Написать функцию, реализующую логическую операцию "Исключающее ИЛИ"
Напишите функцию bool Xor (bool x, bool y), реализующую функцию &quot;Исключающее ИЛИ&quot; двух логических переменных x и y. Функция Xor должна...

Строки. Произвести над каждым символом операцию побитового И
Ввести в консоли строку из пяти символов, а затем произвести над каждым символом операцию побитового И (AND – в C++ &amp;) со вторым...

Почему используют операцию побитового отрицания, а не передачу 0?
public virtual void Add(Object key, Object value) { if (key == null) throw new ArgumentNullException(&quot;key&quot;,...

16
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
08.06.2016, 20:48
toyi, шифратор я так полагаю
0
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 103
08.06.2016, 20:50  [ТС]
Цитата Сообщение от Azazel-San Посмотреть сообщение
шифратор я так полагаю
вот пример
C
1
2
3
4
5
6
//pow2plus1 - возвращает 2^x + 1, где 0 <= x <= 15 (или 31)
 
unsigned pow2plus1(unsigned x)
{
  return (1 << x) + 1;
}
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
08.06.2016, 20:50
Лучший ответ Сообщение было отмечено toyi как решение

Решение

toyi,
C++
1
2
3
4
unsigned bitXor(unsigned x, unsigned y)
{
    return x & ~y | ~x & y;
}
1
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 103
08.06.2016, 20:52  [ТС]
Цитата Сообщение от avgoor Посмотреть сообщение
C++
1
2
3
4
unsigned bitXor(unsigned x, unsigned y)
{
* * return x & ~y | ~x & y;
}
можешь ссылку на ресурс кинуть
мне разобраться с этим нужно или если не сложно обьясни

Добавлено через 54 секунды
что по этой теме прочитать вообще чтобы разобраться?
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
08.06.2016, 20:53
avgoor, а? это не надо?
C++
1
x ^ y
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
08.06.2016, 20:55
Цитата Сообщение от toyi Посмотреть сообщение
можешь ссылку на ресурс кинуть
Не могу, т.к. не знаю их за ненадобностью. Это элементарные вещи из булевой алгебры. Гугли сам.

Добавлено через 53 секунды
Azazel-San, А вопрос целиком прочитать не судьба?
Цитата Сообщение от toyi Посмотреть сообщение
Допустимые операции: ~ & |
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
08.06.2016, 21:10
Цитата Сообщение от avgoor Посмотреть сообщение
А вопрос целиком прочитать не судьба?
мда...
Цитата Сообщение от toyi Посмотреть сообщение
- операции ~ ! * + - (тип) sizeof << >> & ^ |
Видимо, не смогли определиться
0
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 103
08.06.2016, 21:12  [ТС]
Цитата Сообщение от avgoor Посмотреть сообщение
Не могу, т.к. не знаю их за ненадобностью. Это элементарные вещи из булевой алгебры. Гугли сам.
такой вопрос а как вывести полученный результат с помощью printf ?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# include <stdio.h>
 
unsigned bitXor(unsigned x, unsigned y)
{
   return x & ~y | ~x & y;
}
 
int main()
{
 
    unsigned r=6;
    unsigned z=9;
    bitXor(r,z);
    unsigned m=bitXor(r,z);
    
}
Добавлено через 1 минуту
Цитата Сообщение от Croessmah Посмотреть сообщение
мда..
что не так?
может можете какие ссылки для изучения данного вопроса подсказать ?
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
08.06.2016, 21:13
toyi, ну выводи m
0
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 103
08.06.2016, 21:18  [ТС]
Цитата Сообщение от Azazel-San Посмотреть сообщение
ну выводи m
так printf(m) ругается я просто незн как
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
08.06.2016, 21:19
Цитата Сообщение от Croessmah Посмотреть сообщение
Видимо, не смогли определиться
Имхается, в начале написано, что можно использовать во всех вариантах задания, а в конце - для конкретного варианта.
0
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 103
08.06.2016, 21:33  [ТС]
Цитата Сообщение от toyi Посмотреть сообщение
так printf(m) ругается я просто незн как
Цитата Сообщение от avgoor Посмотреть сообщение
Имхается, в начале написано, что можно использовать во всех вариантах задания, а в конце - для конкретного варианта.
не подскажешь как?

Добавлено через 8 минут
Цитата Сообщение от Azazel-San Посмотреть сообщение
toyi, ну выводи m
так а как???
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
08.06.2016, 21:34
Цитата Сообщение от toyi Посмотреть сообщение
может можете какие ссылки для изучения данного вопроса подсказать ?
https://ru.wikipedia.org/wiki/... 0%B8%D0%B8
https://ru.wikipedia.org/wiki/... 0%B8%D1%8F
http://www.c-cpp.ru/books/bitovye-operatory
http://subscribe.ru/archive/co... 25516.html
1
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 103
08.06.2016, 21:36  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
спасибо
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
08.06.2016, 21:37
toyi, а какие ошибки пишет? Да, и помоему не так должно быть, но я в этом не очень, поэтому жди гуру
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
08.06.2016, 21:39
Цитата Сообщение от toyi Посмотреть сообщение
не подскажешь как?
C++
1
printf("%u", m);
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.06.2016, 21:39
Помогаю со студенческими работами здесь

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

Написать традиционную функцию умножения двух чисел, и функцию использующую только операцию сложения
#include &lt;stdio.h&gt; #include &quot;stdafx.h&quot; #include &quot;iostream&quot; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; #include &lt;iostream&gt; ...

Написать функцию Xor
Напишите функцию - bool Xor (bool x, bool y), реализующую функцию &quot;Исключающее ИЛИ&quot; двух логических переменных x и y. Функция Xor должна...

Произвести над каждым символом строки операцию побитового И, со вторым операндом равным 11010111.
Ввести в консоли строку из пяти символов, а затем произвести над каждым символом операцию побитового И (AND – в C++ &amp;) со вторым...

Написать функцию, реализующую нейронную сеть
Помогите, пожалуйста с задачей! Написать на Lisp функцию, реализующую нейронную сеть с двумя входами x1, x2 и одним выходом y,...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru