Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/29: Рейтинг темы: голосов - 29, средняя оценка - 4.83
1 / 1 / 0
Регистрация: 15.10.2019
Сообщений: 24
1

Калькулятор умножения чисел в двоичной системе

22.10.2019, 21:03. Показов 5667. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Друзья,доброго времени суток,у меня есть такой код для сложения и вычитания чисел в двоичной системе,нужно дописать еще умножение но я не совсем понимаю как это сделать,как именно написать код,буду благодарен за любую помощь)
Python
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
def add(a,b):
    answer=str('')
    remain=int(0)
    for i in range(len(a)-1,-1,-1):
        if((int(a[i])+int(b[i])+remain)==0):
            answer+='0'
            continue
        if((int(a[i])+int(b[i])+remain)==1):
            if(remain==1):
                remain-=1
            answer+='1'
            continue
        if((int(a[i])+int(b[i])+remain)==2):
            if(remain==0):
                remain+=1
            answer+='0'
            continue
        if((int(a[i])+int(b[i])+remain)==3):
            answer+='1'
            continue
    if(remain==1):
        answer+='1'
    return answer[::-1]
#================================================
def minus(a,b):
    answer=str('')
    remain=int(0)
    for i in range(len(a)-1,-1,-1):
        if((int(a[i])-int(b[i]))==-1):
            remain+=1
            answer+='1'
            continue
        if((int(a[i])-int(b[i]))==0):
            if (remain==1):
                answer+='1'
                remain-=1
                continue
            answer+='0'
        if ((int(a[i])-int(b[i]))==1):
            if (remain==1):
                remain-=1
                answer+='0'
                continue
            answer+='1'
    return answer[::-1]
#=============================================
def multi(a,b):
    
        
#==============================================
num1=input('Type num1:')
num2=input('Type num2:')
#===============================================
 
#===============================================
if len(num1)>len(num2):
    num2=num2.rjust(len(num1),"0")
else:
    num1=num1.rjust(len(num2),"0")
#================================================
 
#=================================================
print(add(num1,num2))
print(minus(num1,num2))
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.10.2019, 21:03
Ответы с готовыми решениями:

Калькулятор для сложения чисел в двоичной системе
Доброго времени суток!!! Поскольку я новичок, помогите пожалуйста, следует написать программу...

Не могу написать функцию умножения восьмиразрядных чисел в двоичной системе
Здравствуйте! Не могу написать функцию умножения восьмиразрядных чисел в двоичной системе. В...

Составить программу умножения и деления чисел в двоичной системе с фиксированной запятой
Помогите составить программу умножения и деления чисел в двоичной системе с фиксированной запятой....

Напечатать таблицу умножения и сложения натуральных чисел в двоичной, восьмиричной системе счисления
Составить программу которая печатает таблицу умножения и сложения натуральных чисел в двоичной,...

Калькулятор для целых чисел в двоичной системе счисления
Создать программу – калькулятор для целых чисел в двоичной системе счисления. Должны быть кнопки +...

4
Am I evil? Yes, I am!
Эксперт PythonЭксперт Java
17590 / 10340 / 2825
Регистрация: 21.10.2017
Сообщений: 22,416
22.10.2019, 21:14 2
Лирическое отступление.
RikiCat, с точки зрения изучения - задача любопытная. А с практической точки зрения - проще представить числа в десятичной системе, произвести над ними действия и вернуть (если надо) их двоичное представление.
0
1 / 1 / 0
Регистрация: 15.10.2019
Сообщений: 24
22.10.2019, 21:16  [ТС] 3
Вся суть задания в том как раз что нельзя переводить в десятичную систему)))
0
Am I evil? Yes, I am!
Эксперт PythonЭксперт Java
17590 / 10340 / 2825
Регистрация: 21.10.2017
Сообщений: 22,416
22.10.2019, 21:22 4
Python
1
2
3
x = 0b111
y = 0b10
print(bin(x * y))   # 0b1110
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
23.10.2019, 07:33 5
Цитата Сообщение от RikiCat Посмотреть сообщение
if((int(a[i])+int(b[i])+remain)==0):
* * * * * * answer+='0'
* * * * * * continue
* * * * if((int(a[i])+int(b[i])+remain)==1):
* * * * * * if(remain==1):
* * * * * * * * remain-=1
* * * * * * answer+='1'
* * * * * * continue
* * * * if((int(a[i])+int(b[i])+remain)==2):
* * * * * * if(remain==0):
* * * * * * * * remain+=1
* * * * * * answer+='0'
* * * * * * continue
* * * * if((int(a[i])+int(b[i])+remain)==3):
* * * * * * answer+='1'
* * * * * * continue
используйте elif

Выражение (int(a[i])+int(b[i])+remain достаточно вычислить один раз и сохранить результат в переменную

Цитата Сообщение от RikiCat Посмотреть сообщение
answer=str('')
* * remain=int(0)
0 и так является int объектом, а '' является строкой. смысла в int() и str() нет
0
23.10.2019, 07:33
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.10.2019, 07:33
Помогаю со студенческими работами здесь

Как создать Программа-калькулятор для чисел в двоичной системе счисления
Программа-калькулятор для чисел в двоичной системе счисления

Калькулятор в двоичной системе
Сложение в двоичной системе. Подскажите почему не верные ответы выдает? #include "stdafx.h"...

Калькулятор в двоичной системе
фото схемы ниже написать программу на C++ у кнопок должны быть присвоены...

Составить таблицы сложения и умножения в двоичной системе счисления
Составить таблицы сложения и умножения в двоичной системе счисления и выполнить вычисления: а)...

Калькулятор в двоичной системе (схемотехника)
Помогите написать код для программы proteus isis Калькулятор в двоичной системе предмет...

Калькулятор в двоичной системе счисления
не понимаю как можно сделать калькулятор в двоичной сс. вот в десятичной model tiny STACK 256...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru