1 / 1 / 0
Регистрация: 11.11.2023
Сообщений: 20
|
||||||||||||||||
1 | ||||||||||||||||
Перевод отрицательных чисел в двоичную систему счисления11.08.2024, 19:16. Показов 687. Ответов 5
Здравствуйте! Помогите реализовать в программе ниже, чтобы она также переводила отрицательное число в двоичную систему счисления.
файл main.cpp
0
|
11.08.2024, 19:16 | |
Ответы с готовыми решениями:
5
Перевод чисел в двоичную систему счисления Перевод отрицательных float в двоичную систему с побитовыми сдвигами Перевод чисел из 10 системы счисления в двоичную Программа для перевода дробных чисел из шестнадцатеричной в двоичную систему счисления |
Вездепух
12805 / 6679 / 1798
Регистрация: 18.10.2014
Сообщений: 16,911
|
||||||
11.08.2024, 19:37 | 2 | |||||
num-1 ? С чего это вдруг вычитается единица?А здесь что происходит? А что если 0 - это и есть правильный результат?А что если в этом месте окажется digit < 0 ? Это "допустимая цифра для данного основания"?Так а что это за диапазон такой? Откуда взялись такие пределы? Более того, судя по косвенным признакам, программа писалась для платформы MSVC. Но в MSVC тип long является 32-битным. То есть переменная long result никак не может выйти за эти пределы. В чем тогда смысл этой проверки?Если вашей задачей было воспроизвести синтаксис констант языка С, то здесь это сделано не совсем точно. В языке С 09 - это синтаксическая ошибка. А у вас это будет считаться десятичной константой.
0
|
1 / 1 / 0
Регистрация: 11.11.2023
Сообщений: 20
|
||||||
11.08.2024, 20:22 [ТС] | 3 | |||||
тут, чтобы перевести из отрицательного числа, нужно сначала перевести это же число, но положительное, потом поменять 1 на 0 или 0 на 1, а затем прибавить 1. вот эту схему я не понимаю как реализовать
Добавлено через 57 секунд num-1 это я пытался как-то реализовать схему перевода, которую я описал выше, но она неправильная Добавлено через 3 минуты
0
|
Вездепух
12805 / 6679 / 1798
Регистрация: 18.10.2014
Сообщений: 16,911
|
|
11.08.2024, 20:27 | 4 |
Так откуда взялась такая странная схема?
Вы ясно написали в задании, что вам нужно "перевести отрицательное число в двоичную систему счисления". В любой системе счисления традиционные правила записи отрицательных чисел одинаковы: пишем знак - , а затем просто записываем абсолютное значение числа. Например, -510 - это -1012.Вот и все. Никаких "поменять 1 на 0 или 0 на 1, а затем прибавить 1" не нужно. Еще раз повторяю свой вопрос: а что если исходное число и так было 0 ?
1
|
1612 / 1514 / 251
Регистрация: 19.02.2010
Сообщений: 4,083
|
|
12.08.2024, 09:29 | 5 |
https://ru.wikipedia.org/wiki/Дополнительный_код
ТСу по заданию, видимо, нужно именно компутерное (аппаратное) представление в доп.коде - а не двоичная СС в вакууме. На указанной странице педивикии есть пример кода сишной функции. В общем, не надо отдельной операцией превращать отрицательное число в положительное - оператор инверсии битов инвертирует (в данном случае - превратит 1 в 0) и знаковый бит тоже.
0
|
Вездепух
12805 / 6679 / 1798
Регистрация: 18.10.2014
Сообщений: 16,911
|
|
12.08.2024, 09:32 | 6 |
Это будет представление отрицательных чисел в дополнительном коде. Но у ТС в задании ничего подобного не сказано. У ТС сказано "чтобы она также переводила отрицательное число в двоичную систему счисления". Никакого дополнительного кода тут даже отдалено не упоминается.
1
|
12.08.2024, 09:32 | |
12.08.2024, 09:32 | |
Помогаю со студенческими работами здесь
6
Перевод больших чисел в двоичную систему без массива Разработать программу, выполняющую перевод чисел из десятичной системы счисления в двоичную, восьмеричную или шестнадцат Перевод чисел в восьмеричную систему счисления Перевод чисел из четверичной в десятичную систему счисления Перевод чисел из десятичной в пятеричную систему счисления Перевод целых неотрицательных чисел с десятичной системы счисления в двоичную систему счисления Перевод целых положительных чисел из десятичной системы счисления в двоичную систему счисления Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Что такое хорошо и что такое плохо, вид сбоку. Индивид и общество - грань не нарушения.
Hrethgir 18.01.2025
В моей личной жизни и времени, я рассуждаю категорией "хуже-лучше", в том плане, когда меня спросили например - "а зачем ты делаешь свой процессор?", то я ответил - "чтобы сделать свою жизнь лучше". . .
|
Передача по ссылке или по значению в Java?
InfoMaster 18.01.2025
В мире программирования на Java одним из ключевых аспектов, требующих глубокого понимания, является механизм передачи параметров в методы. Этот фундаментальный концепт часто становится источником. . .
|
Тернарный условный оператор в Python
InfoMaster 18.01.2025
В мире программирования существует множество инструментов и конструкций, позволяющих создавать эффективный и лаконичный код. Одним из таких инструментов является тернарный условный оператор, который. . .
|
Как удалить неотслеживаемые файлы из рабочего дерева Git
InfoMaster 18.01.2025
В процессе разработки программного обеспечения с использованием системы контроля версий Git часто возникает необходимость в управлении неотслеживаемыми файлами. Неотслеживаемые файлы (untracked. . .
|
Что делает код if __name__ == "__main__": в Python
InfoMaster 18.01.2025
В мире программирования на Python существует множество важных концепций, и одной из наиболее интересных является конструкция if __name__ == "__main__". Эта специальная конструкция играет ключевую. . .
|
Как заставить Git забыть об отслеживаемом файле, добавленном в .gitignore
InfoMaster 18.01.2025
В мире разработки программного обеспечения система контроля версий Git стала неотъемлемой частью рабочего процесса, позволяя эффективно отслеживать изменения в коде и управлять ими. Однако. . .
|
Что означает use strict в JavaScript и для чего используется
InfoMaster 18.01.2025
В мире современной веб-разработки JavaScript играет ключевую роль как один из основных языков программирования. По мере его эволюции возникла необходимость в механизмах, которые помогли бы. . .
|
Как работать со скрытыми (hidden) элементами в jQuery
InfoMaster 18.01.2025
В современной веб-разработке управление видимостью элементов на странице является одним из ключевых аспектов создания интерактивных пользовательских интерфейсов. jQuery предоставляет мощный набор. . .
|
Как переключаться между ветками (Branch) с помощью checkout в Git
InfoMaster 18.01.2025
Ветки в Git являются одной из ключевых концепций для управления версионностью кода, позволяя разработчикам эффективно работать в команде и параллельно развивать программные проекты. Каждый новый. . .
|
Что такое стек и куча, чем они отличаются и где находятся
InfoMaster 18.01.2025
Понимание основных концепций памяти в программировании
В мире современного программирования эффективное управление памятью играет ключевую роль в создании производительных и надежных приложений. . . .
|
Как использовать комментарии в JSON
InfoMaster 18.01.2025
JSON (JavaScript Object Notation) представляет собой легкий и широко используемый формат обмена данными, который стал стандартом де-факто для веб-приложений и программных интерфейсов. При работе с. . .
|
Как заставить git pull перезаписать локальные файлы в Git
InfoMaster 18.01.2025
Проблема перезаписи локальных файлов в Git
При работе с системой контроля версий Git разработчики часто сталкиваются с ситуацией, когда необходимо синхронизировать локальный репозиторий с. . .
|