Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 25.09.2016
Сообщений: 5

Перевод натурального числа в двоичную систему

25.09.2016, 16:40. Показов 3211. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужно написать программу, которая переводила бы натуральные числа в двоичную систему, а потом с этими числами что бы выполняла такие действие:
1) "и"
2) Или
3) Или, что исключает
4) Сдвиг влево
5) Сдвиг вправо
6) Возражение

Помогите плиз, напишите весь код пожалуйста, что бы сразу можно было бы запустить рабочую программу, так как мало шарю в программировании, задали на учёбе, а ещё ничего не научили. Заранее спасибо
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.09.2016, 16:40
Ответы с готовыми решениями:

Перевод числа в двоичную систему
Скажите , что не так в коде? Перевод в 2ичную систему счисления . Получается бесконечным int main() { ...

Перевод числа в двоичную систему
Каким циклом можно перевести число из десятичной в двоичную и присвоить переменной это число? Например из чисел 1, 2, 3 получить 01,...

Перевод числа из десятичною в двоичную систему
Надо перевести числа в двоичною систему, я уже делал в Python такое ,там bin(8) и получал нужное, есть ли что такое в С++ я искал тут на...

6
Объявлятель переменных
 Аватар для SpBerkut
1225 / 411 / 321
Регистрация: 24.09.2011
Сообщений: 1,279
25.09.2016, 21:27
Лучший ответ Сообщение было отмечено Sanya17101999 как решение

Решение

Ну, как-то так. Код с китайским душком. Возможно, через функторы можно сделать более технично, но я не очень в этом уверен. Проверок на "бинарность" нет.
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#include <iostream>
using namespace std;
 
typedef unsigned long long ui64;
 
ui64 binDecimalToBinary(unsigned value){
    ui64  result = 0,
                        multiplier = 1;
    while (value){
        result += value%2 * multiplier;
        value /= 2;
        multiplier *= 10;
    }
    return result;
}
 
ui64 binAnd(ui64 A, ui64 B){
    ui64    result = 0,
            multiplier = 1;
    while (A|B){
        result += (A%10)*(B%10)*multiplier;
        multiplier *= 10;
        A /= 10;
        B /= 10;
    }
    return result;
}
 
ui64 binOr(ui64 A, ui64 B){
    ui64    result = 0,
            multiplier = 1;
    while (A|B){
        result += (((A%10)+(B%10))>0)*multiplier;
        multiplier *= 10;
        A /= 10;
        B /= 10;
    }
    return result;
}
 
ui64 binXor(ui64 A, ui64 B){
    ui64    result = 0,
            multiplier = 1;
    while (A|B){
        result += ((A%10)!=(B%10))*multiplier;
        multiplier *= 10;
        A /= 10;
        B /= 10;
    }
    return result;
}
 
ui64 binShiftLeft (ui64 value, unsigned shift){
    while (shift--){
        value *= 10;
    }
    return value;
}
 
ui64 binShiftRight (ui64 value, unsigned shift){
    while (shift--){
        value /= 10;
    }
    return value;
}
 
ui64 binNot (ui64 value){
    ui64    result = 0,
            multiplier = 1;
    while (value){
        result += ((value%10)!=1)*multiplier;
        multiplier *= 10;
        value /= 10;
    }
    return result;
}
 
int main()
{   
    ui64    D1 = 10,
            D2 = 2,
            B1 = binDecimalToBinary(D1),
            B2 = binDecimalToBinary(D2),
            A1 = binNot(B1);
    cout << B1 << endl;
    cout << B2 << endl;
    cout << A1 << endl;
}
1
0 / 0 / 0
Регистрация: 25.09.2016
Сообщений: 5
26.09.2016, 13:43  [ТС]
ошибок нету, но в выкидывает просто это и всё, мне нужно так, что бы я вводил число и оно выводило все эти результати изчислений, переделай пожалуйста
Миниатюры
Перевод натурального числа в двоичную систему  
0
Объявлятель переменных
 Аватар для SpBerkut
1225 / 411 / 321
Регистрация: 24.09.2011
Сообщений: 1,279
26.09.2016, 14:32
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int main()
{   
    ui64 D1, D2, B1, B2;
    cout << "D1 = "; cin >> D1;
    cout << "D2 = "; cin >> D2;
    B1 = binDecimalToBinary(D1),
    B2 = binDecimalToBinary(D2);
    cout << "B1 == " << B1 << endl;
    cout << "B2 == " << B2 << endl;
    cout << "B1 && B2 == " << binAnd(B1,B2) << endl;
    cout << "B1 || B2 == " << binOr(B1,B2) << endl;
    cout << "B1 ^ B2 == " << binXor(B1,B2) << endl;
    cout << "B1 >> 2 == " << binShiftRight(B1,2) << endl;
    cout << "B1 << 1 == " << binShiftLeft(B2,1) << endl;
    cout << "!B1 == " << binNot(B1) << endl;
}
Ссылка на весь код: http://cpp.sh/47lb
Изображения
 
1
0 / 0 / 0
Регистрация: 25.09.2016
Сообщений: 5
26.09.2016, 16:05  [ТС]
Спасибо тебе огромнейшее, выручил реально)) только ещё вопрос есть: а можно как-то эту программу на две разделить? я имею ввиду что бы одна программа делала унарные операции, а другая бинарные?
0
Объявлятель переменных
 Аватар для SpBerkut
1225 / 411 / 321
Регистрация: 24.09.2011
Сообщений: 1,279
26.09.2016, 16:13
Цитата Сообщение от Sanya17101999 Посмотреть сообщение
а можно как-то эту программу на две разделить?
Да хоть на каждую операцию по отдельной программе ваяй. Функции написаны и ты можешь тасовать их по своему усмотрению.
0
0 / 0 / 0
Регистрация: 25.09.2016
Сообщений: 5
26.09.2016, 18:28  [ТС]
да я понимаю, просто проблема в том, что я не понимаю, что где)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.09.2016, 18:28
Помогаю со студенческими работами здесь

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

Перевод числа в двоичную систему счисления
Написать программу в С++ С КОММЕНТАРИЯМИ!!!: Написать функцию которая заданное натуральное число А переводит в двоичную систему...

Перевод целого числа в двоичную систему счисления
Вводится целое число n. Вывести это число в двоичной системе счисления!!...((( как?......

Рекурсивный перевод числа в двоичную систему исчисления
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; void fuck(const int num, string &amp;snum){ if (num%2==0) ...

Перевод целого десятичного числа в двоичную систему счисления
Перерыл инет, форум нашел кучу разных вариантов и не одного закончено го :( может у кого есть нормальный вариант реализации кода?


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru