Напишите программку сложения, вычитания и умножения 2-ух двоичных чисел. Предложите способ
Напишите программку сложения, вычитания и умножения 2-ух двоичных чисел. Предложите метод проверки результата: 1011 и 110
Задать свой вопрос1 ответ
Тема Асанкулов
Const
Rn : String[36] = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
Function DecToN(a : Longint; Raz : Byte) : String;
Begin
If agt;Raz-1 then DecToN:=DecToN(a div Raz,Raz)+Rn[(a mod Raz)+1]
else DecToN:=Rn[a+1];
end;
Function NToDec(a : String; Raz : Byte) : Longint;
Begin
If Length(a)gt;0 then NToDec:=Pos(a[Length(a)],Rn)-1+Raz*NToDec(Copy(a,1,Length(a)-1),Raz)
else NToDec:=0;
end;
Var a,b : String;
Begin
a:='1011'; b:='110';
Writeln('a = ',a,' (bin) = ',NToDec(a,2),' (dec)');
Writeln('b = ',b,' (bin) = ',NToDec(b,2),' (dec)');
Writeln(a+'+'+b+' = ',DecToN(NToDec(a,2)+NToDec(b,2),2),' (bin) ',NToDec(a,2)+NToDec(b,2),' (dec)');
Writeln(a+'-'+b+' = ',DecToN(NToDec(a,2)-NToDec(b,2),2),' (bin) ',NToDec(a,2)-NToDec(b,2),' (dec)');
Writeln(a+'*'+b+' = ',DecToN(NToDec(a,2)*NToDec(b,2),2),' (bin) ',NToDec(a,2)*NToDec(b,2),' (dec)');
end.
Rn : String[36] = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
Function DecToN(a : Longint; Raz : Byte) : String;
Begin
If agt;Raz-1 then DecToN:=DecToN(a div Raz,Raz)+Rn[(a mod Raz)+1]
else DecToN:=Rn[a+1];
end;
Function NToDec(a : String; Raz : Byte) : Longint;
Begin
If Length(a)gt;0 then NToDec:=Pos(a[Length(a)],Rn)-1+Raz*NToDec(Copy(a,1,Length(a)-1),Raz)
else NToDec:=0;
end;
Var a,b : String;
Begin
a:='1011'; b:='110';
Writeln('a = ',a,' (bin) = ',NToDec(a,2),' (dec)');
Writeln('b = ',b,' (bin) = ',NToDec(b,2),' (dec)');
Writeln(a+'+'+b+' = ',DecToN(NToDec(a,2)+NToDec(b,2),2),' (bin) ',NToDec(a,2)+NToDec(b,2),' (dec)');
Writeln(a+'-'+b+' = ',DecToN(NToDec(a,2)-NToDec(b,2),2),' (bin) ',NToDec(a,2)-NToDec(b,2),' (dec)');
Writeln(a+'*'+b+' = ',DecToN(NToDec(a,2)*NToDec(b,2),2),' (bin) ',NToDec(a,2)*NToDec(b,2),' (dec)');
end.
Васька Тикмеов
Строка нужна для перевода из одной СС в иную. Позже происходит математическая часть с следующим переводом результата в изначальную двоичную систему.
Лариса Цепоухова
просто функция более универсальная... но да, можно немного и уменьшить при желании
Егор
Я же разговариваю - функции мои, готовые, изготовленные для универсального использования. Я просто беру готовые блоки и "склеиваю" под свои нужды. Даже если алфавит будет 2-ух символьным - это уменьшит код мизерно. Я окончательно понимаю, что Вы возможно перфекционист, но моё решение конкретно такое и еще больше его улучшить смысла не вижу. Желайте предложить лучше? Милости просим! Я только "ЗА", чтобы все могли увидеть несколько различных подходов к решению.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов