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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.80
Selle
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 15
#1

Битовые операции с FLOAT - C++

27.05.2011, 23:23. Просмотров 2422. Ответов 3
Метки нет (Все метки)

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
26
#include <iostream>
#include <math.h>
using namespace std;
 
int main()
{
    int  var = 0; // хочу float!!!!
    cout << "Input number: ";
    cin >> var;
    cout << "Decimal: " << var;
    cout << endl;
    cout << "Binary: " << endl;
    int binarr[32];
 
   for (int i = 31; i >= 0; i--)
         {
            int bit = ((var >> i)&1);
            binarr[i] = bit;
            cout << binarr[i];
         }
 
   cout << endl;
    return 0;
}
~
~
Как для флоат сделать?!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.05.2011, 23:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Битовые операции с FLOAT (C++):

Битовые операции, битовые поля. - C++
Здравствуйте! Еслть 4 диапазона чисел: 0-100, 0-100, 0-6000, 0-3. Сделать в виде битовых операций. Записать в unsigned int. Использовать...

Битовые операции и операции смещения языка С - C++
Доброго времени суток господа,помогите пожалуйста.Есть 2 кода к задаче,первый работает верно(переводит обычные числа в 16-ти ричные),а...

Битовые операции - C++
Установить в ноль каждый третий значащий бит целого числа А А = 150(например) Через _itoa_s.. Битовые операции не моё совсем :(...

битовые операции - C++
как из 0001 0000 тоесть в dec '8' сделать 0000 0001 в dec '1'?

Битовые операции - C++
Здраствуйте, помогите, пожалуйста! Надо написать три функции, используя только битовые (для первых двух) и только битовые и...

Битовые операции - C++
Дано задание : Ввести последовательность из 8-ми символов. Если сумма единиц в представлении символа нечетная, то заменить 2 старших бита...

3
asics
Freelance
Эксперт С++
2850 / 1785 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
27.05.2011, 23:37 #2
Selle, Битовые операторы применимы только для целечислинных типов.
0
Evg
Эксперт CАвтор FAQ
18368 / 6415 / 441
Регистрация: 30.03.2009
Сообщений: 17,797
Записей в блоге: 28
27.05.2011, 23:44 #3
Единственный способ распечатать биты плавающего представления - это побитно перегнать float в значение типа int и побитно распечатать. Например, можно сделать так:

C
1
2
float f = 123.45;
int var = *((int*)&f);
А дальше всё как у тебя, только вместо печати "Decimal" и var надо вставить "Float" и f

Такой способ (как и практически любой другой) подразумевает, что размер int'а совпадает с размером float'а.
2
ValeryLaptev
Эксперт С++
1045 / 824 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
28.05.2011, 00:43 #4
Можно обмануть компилятор:
C++
1
2
3
4
5
6
7
union Bits
{   float F;
     int I;
};
Bits A;
A.F = 1.0;
A.I = A.I & 0x80000000;
Не универсально, так как неявно использует одинаковые размеры float и int.
На 32-битном пентюхе - работает.
Можно еще так:
C++
1
2
3
4
union Bits
{   float F;
     char ch[sizeof(float)];
};
2
28.05.2011, 00:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2011, 00:43
Привет! Вот еще темы с ответами:

Битовые операции - C++
Имеется число int x = 85; // 1010101 - двоичное представление // 6543210 - номера битов // нужно взять // 0,2,3,4 биты и сложить...

Битовые операции - C++
помогите написать программу в консоли... я вообще не знаю эту тему и не знаю ка делать... вот, задача.. Создайте программу,...

Битовые операции - C++
Доброго времени суток! Помогите решить задачу на тему &quot;Битовые операции&quot;: Ввести четыре целых числа P, Q, N и M. Что больше P*(2^M)...

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


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

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

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