Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
marina11
1 / 1 / 0
Регистрация: 15.11.2012
Сообщений: 84
#1

Операция побитового сдвига - C++

14.02.2013, 20:48. Просмотров 697. Ответов 4
Метки нет (Все метки)

Задача состоит в том,что нужно введенное число (unsigned char) перевести в двоичную, а затем проверить биты полученного числа (тоесть, что находится в ячейке 0 или 1). Начало программы я написала
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
25
#include "stdafx.h"
#include <stdio.h>
#include <math.h>
#include <conio.h>
 
int c=0;
void dvoich(int x1)
{
    int i,b;
    for(i=0;x1>0;i++)
    {
        b=x1%2;
        x1=(x1-b)/2;
        c+=b*pow(10.,i);
    }
    printf("\n\n Dvoichnoe:%d ",c);
}
void main()
 
{
    unsigned char a;
    printf("\n Vvedite desiatichnoe chislo:");
    scanf("\n%c",&a);
    dvoich(a);
}
программа переводит число из 10 в 2 СС, а как дальше?Нужно воспользоваться побитовым сдвигом?Правильно ли будет записать с=с>>7, а дальше проверять переменную с?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2013, 20:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Операция побитового сдвига (C++):

Не хватает опыта для того, чтобы понять ошибку в задаче циклического побитового сдвига - C++
Доброго времени суток! Помогите пожалуйста разобраться, почему вместо заданных мною, скажем 4 символов, после циклического сдвига он выдаёт...

операция сдвига - C++
Объясните пожалуйста как именно работает и для чего нужна операция сдвига влево, в выражении например: N = 10; r = 1 &lt;&lt; N; И если...

Атомарна ли операция битового сдвига? - C++
Система: Win7 x64. Один проц Intel i7 3770k. Предположим, что я в студии собираю 64-х битным компилятором проект, в котором есть: ...

Прокомментируйте программу побитового отрицания - C++
Привет друзья,помогите пож-та разобраться в программе,завтра надо её защитить,рассказать как она работает. Если кому не сложно распишите...

Разбор примера работы побитового И - C++
Здравствуйте, в процессе моего изучения побитовых операций возникли некоторый вопросы, на которые учебник ответить не смог, надеюсь на вашу...

Сцепка флагов посредством побитового ИЛИ - C++
Привет всем. Есть куча флагов: enum fmt_flags { boolalpha = 0x0001, dec = 0x0002, fixed ...

4
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
14.02.2013, 20:56 #2
Цитата Сообщение от marina11 Посмотреть сообщение
а затем проверить биты полученного числа (тоесть, что находится в ячейке 0 или 1)
Ничего не понятно.
0
marina11
1 / 1 / 0
Регистрация: 15.11.2012
Сообщений: 84
14.02.2013, 20:58  [ТС] #3
Цитата Сообщение от iama Посмотреть сообщение
Ничего не понятно.
Допустим я ввела число 123, программа перевела в двоичную, вывела на экран 1111011, мне нужно задать условие, если в 7 ячейке 0, выводить надпись "ноль",а если 1, то выводить надпись "единица".Как это сделать?
0
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
14.02.2013, 21:06 #4
Поразрядно запишите двоичную запись числа в массив и выдавайте ответ в зависимости от элемента массива, например.

С помощью побитовых операторов можно еще:
C++
1
cout << (n & (1 << 7) ? "1" : "0");
1
xtorne21st
интересующийся
304 / 275 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
14.02.2013, 21:31 #5
Цитата Сообщение от marina11 Посмотреть сообщение
Допустим я ввела число 123, программа перевела в двоичную, вывела на экран 1111011, мне нужно задать условие, если в 7 ячейке 0, выводить надпись "ноль",а если 1, то выводить надпись "единица".Как это сделать?
У вас программа не правильно считает.
0
14.02.2013, 21:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2013, 21:31
Привет! Вот еще темы с ответами:

Вычислить значение побитового логического выражения - C++
Добрый день господа форумчане не могу написать код верней не могу понять с чего начать задача (x↓y)+zvx̅ Как написать...

Существуют ли методы побитового сравнения строк? - C++
Существуют ли методы побитового сравнения строк? Нужно искать и сравнивать комбинацию 126 бит. Комбинация известна. А сравнивать надо с...

Написать функцию, реализующую операцию побитового xor - C++
дали задание не могу понять даже что делать подскажите по заданию литературу или сайт какой или ветку на форуме При написании...

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


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru