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

Установка бита с использованием побитовых операций

22.12.2014, 01:46. Показов 1438. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть следующая программа, которой задается само число/символ (unsigned char), переводит программа в двоичный вид, и бит, который был задан (номер бита), обнуляет. Нужно сделать так, чтобы бит не обнулялся, а наоборот, превращался в 1. Сам текст
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <conio.h>
using namespace std;
 
int main()
{
    cout <<"Vvedite x\n";
    char x;    cin >>x;
    int z,y;
    z=1;
    z<<=7;
 
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y)<<endl;
     cout <<"\nvvedite nomer bita (ne ravnii 1)\n";
    short int n;    cin >>n;
    z=1;
    z<<=7;
    z>>=(n-1);
    z=~z;
    x=x&z;
 
    z=1;
    z<<=7;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y); z>>=1;
    y=z&x;    cout <<(z==y);
    _getch();
    return (0);
}
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.12.2014, 01:46
Ответы с готовыми решениями:

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

Умножение целых чисел с использованием побитовых операций
Собственно прошу помочь с кодом, (бинарное умножение чисел 12 и 4) тем кто поможет буду очень благодарен! Нужен именно FASM

Приоритет побитовых операций
Есть легенький кусок кода main() { int x,y,z; x = 3 ; y = 2 ; z = 1; printf ( &quot; %d \n&quot;, x | y &amp;...

1
 Аватар для mat_for_c
223 / 213 / 80
Регистрация: 26.04.2013
Сообщений: 972
22.12.2014, 02:27
Лучший ответ Сообщение было отмечено Zag14 как решение

Решение

C++
1
2
3
4
5
6
cout <<"\nvvedite nomer bita (ne ravnii 1)\n";
short int n; * *cin >>n;
z=1;
z<<=7;
z>>=(n-1);
x=x|z;
Добавлено через 17 минут
C++
1
2
z=1;
z<<=(7+n-1);  // n принадлежит [1, 7]
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.12.2014, 02:27
Помогаю со студенческими работами здесь

Приоритет побитовых операций
Всем привет. Столкнулся с непоняшкой: // Объявляем два массива и инициализируем их unsigned char A={0xFF, 0x03, 0x00,...

Пояснение побитовых операций
Прошу объяснить на пальцах/на примере что значит следующая строчка, каким именно образом осуществляется сдвиг вправо на 4 разряда? что...

Странное взаимовлияние побитовых операций
Запускаю в VS C++ 2012 int shift = 30; long long x = 1&lt;&lt;shift; long long y = ~0; //int x = 1&lt;&lt;shift; //int y = ~0; ...

Рзультат побитовых логических операций
Собственно задача: Напишите программу, вычисляющую результат побитовых логических операций AND и OR над двумя числами(ввод чисел в...

Перегрузка побитовых логических операций
Всем привет! Хотел спросить, можно ли как нибудь перегрузить логическую операцию &quot;И - &amp;&quot; так, чтобы в ней участвовало 2...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru