|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.03.2018, 19:04 | #1 |
Пользователь
Регистрация: 06.03.2018
Сообщений: 10
|
Определить знак и значение
Реализовать ввод целочисельного значения типа signed short. Определить знак и значение используя определение структуры данных.
Начал делать так union { struct { signed short number : 15; signed short index : 1; } num; signed short word; } Numb; Применяю значение Numb.word = -1767; cout << Numb.num.index; cout << Numb.num.number; Но вывод не такой как бы хотелось. Помогите разобраться |
06.03.2018, 20:30 | #2 |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
а чо выводится?
и чо хотелось? Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
06.03.2018, 20:33 | #3 |
Пользователь
Регистрация: 06.03.2018
Сообщений: 10
|
ну если значение отрицательное, крайний бит слева должен быть равным единице а у меня на выводе -1. Как понимать?
|
06.03.2018, 20:41 | #4 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Цитата:
Код:
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
06.03.2018, 20:52 | #5 |
Пользователь
Регистрация: 06.03.2018
Сообщений: 10
|
Хорошо, спасибо. Я похоже сначала сделал проверкой == -1.
Еще вопрос, надо сделать структуру данных действительного числа типа float. Я думаю делать так же. Не подскажите более удобный вариант, с учетом того что потом мне надо будет выводить это значение побитово и отдельно знак и мантиссу. |
06.03.2018, 22:01 | #6 |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Дык всё то же самое. float - это 4 байта, double - 8 байт.
Старший бит всегда знаковый. В каких битах мантисса и экспонента - загугли, я не помню. Вот тебе ещё бонус, почитай. Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
06.03.2018, 22:08 | #7 | ||
Пользователь
Регистрация: 06.03.2018
Сообщений: 10
|
Сделал вот так
Цитата:
Цитата:
|
||
06.03.2018, 22:13 | #8 |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
бонус читай.
и замени везде signed на unsigned. Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
06.03.2018, 22:21 | #9 |
Пользователь
Регистрация: 06.03.2018
Сообщений: 10
|
Так прочитал уже. Все-равно не понимаю что не так делаю. Вроде все как надо написал.
|
06.03.2018, 22:32 | #10 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Цитата:
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
.Определить сколько раз в декабре температура меняла знак . | ANTON66 | Общие вопросы Delphi | 2 | 28.11.2015 17:23 |
Дана последовательность ненулевых целых чисел,оканчивающая нулем.Определить,сколько раз в этой последовательности меняеться знак.( | Salomon9393 | Помощь студентам | 0 | 07.12.2012 18:59 |
Правильно определить знак перед строкой и в зависимости от этого выставить checked свойство | Человек_Борща | Общие вопросы Delphi | 9 | 18.02.2011 01:11 |
Определить знак зодиака | qwertyuiop12345678 | Помощь студентам | 4 | 27.10.2009 17:28 |
Определить, сколько раз в последовательности меняется знак | Siroga35 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 22.01.2009 12:25 |