Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/75: Рейтинг темы: голосов - 75, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 13.11.2016
Сообщений: 17
1

Вывести значение заданного бита

09.01.2017, 17:21. Показов 14303. Ответов 5

Author24 — интернет-сервис помощи студентам
Как вывести значение заданного бита в числе?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.01.2017, 17:21
Ответы с готовыми решениями:

Замена заданного с клавиатуры бита
Доброго времени суток. Столкнулся с проблемой: есть функция void change(char *Mem, int size, int...

Вывести значение логического выражения, заданного в виде строки S.
Вывести значение логического выражения, заданного в виде строки S. Выражение определяется...

Установить значение 7-го бита 32-х разрядного числа в 1
напишите программу которая запрашивает тридцати двухразрядное число и устанавливает значение 7-го...

Написать функцию, изменяющую значение n-го бита на противоположное
Написать функцию, изменяющую значение n-го бита на противоположное. Значение принять с клавиатуры и...

5
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
09.01.2017, 18:29 2
Лучший ответ Сообщение было отмечено anyasuper как решение

Решение

C++
1
cout << (n>>i)&1;
2
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
09.01.2017, 19:06 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <bitset>
#include <iostream>
 
int main()
{
    int x = 42, n;
    std::bitset<8> b(x);
    std::cout << b << "\nEnter bit: ";
    std::cin >> n;
    b.flip(n);
    std::cout << b;
}
1
0 / 0 / 0
Регистрация: 13.11.2016
Сообщений: 17
09.01.2017, 19:24  [ТС] 4
спасибо, а можно ли другим способом?
0
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
09.01.2017, 19:31 5
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
int main()
{
    int x = 42, n;
    std::cout << "Enter bit: ";
    std::cin >> n;
    x ^= 1 << n;
    std::cout << x;
}
Сначала подумал, что надо "поменять значение".
Сейчас напишу как вывести
1
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
09.01.2017, 19:35 6
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
 
int main()
{
    int x = 42, n;
    std::cout << "Enter bit: ";
    std::cin >> n;
    std::cout << (1 & x >> n);
}

Не по теме:

Получилось то же самое, но раз уж обещал написать

1
09.01.2017, 19:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.01.2017, 19:35
Помогаю со студенческими работами здесь

Задача с циклом (число N и b, значение бита под номером b числа N)
Здравствуйте, помогите решить задачу: Написать программу, которая запрашивает натуральное число...

Функция, которая для заданного числа рассчитывает позицию первого слева (старшего) нулевого бита числа
Написать функцию, которая для заданного числа х рассчитывает позицию первого слева (старшего)...

Зависит ли от платформы значение выражения -1u, при размере типа, равном 32 бита?
Кто как думает, значение выражения -1u зависит от платформы или нет? :D

Создать 2 переменные, одна из которых хранит 2 старших бита исходного числа, другая 2 младших бита этого числа
Дано число. Создать 2 переменные, одна из которых хранит 2 старших бита исходного числа, другая 2...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru