ПредишенСледващото

Но не е трудно да се моля.

1. В основната програма:

п - дължината на думата (брой цифри) на двоичен номер
аз - променлив цикъл
М - самата номер. Създадена от случаен поколение нули и единици от най-важния бит към (п-1) тата. В по-старите (н-ти) цифра 1 винаги е писано.
Т - брояч бита
M1 - в резултат на изместване на ляво от всички цифри на номера, м до един и правомощията на правото на нула. В двоичен номер M съответства на умножение на две. За "вътрешна употреба" М1 = М * 10.

2. функция BIN2DEC (превръщане на бинарен номер в знак):

В, В1 - преобразуване на двоично число
Q - до значително цифри (0 или 1), като се излиза от LSB
R - теглото на следващия двоична цифра
D - допълнително идентификатор. Аз се отстраняват.

3. Функциите на двоичен допълнение Sum2Bin:

В1, В2 (1 а, В2а) - сгъваеми двоични числа
b3 - формира двоичен сума
R - знак тегло освобождаване
С1, С2, С3 - цифри (0 или 1) за сглобяеми номера следващото разреждане и количества.
г - прехвърляне към следващ цифрен фигурата.

__________________
С Mozilla Firefox - направо на комунизма!

Vladimir_S, Hello! Вчера предаден на тази задача и ми казаха да го направи по-лесно, така че можете да въведете произволен размер двоично число, и да направи всичко с помощта на функцията и превежда 3 в десетичната система. Има нещо, което е написал (аз не знам дали в дясно), но не мога да разбера как да се изчисли броят на стр. Може би знаете как да го направя? моля да ми кажете!

функция цт (конст S: низ): longint;
Var
I: цяло число;
R: longint;
започвам
R: = 0;
защото: = 1 до дължина (и) направи
започвам
ако (и [а] = '1') или (S [Ь] = '0') след това
R: = R * 2 + (ORD (и [Ь]) - РСР ( "0"))
друг да започне
хм: = -I;
изход;
приключи;
приключи;
хм: = R
приключи;

функция umnogenie (разлагане: longint): низ;
започвам
ако декември = 0, тогава umnogenie: = ''
още
ако нечетен (разлагане) след това
umnogenie: = umnogenie (разлагане DIV 2) + '1'
още
umnogenie: = umnogenie (разлагане DIV 2) + "0";
приключи;

Var
ите: низ;
D1: longint;

Напишете ( "въведете първия двоичен номер: '); ReadLn (и);
D1: = цт (и);
WriteLn ( "продукт равен", umnogenie (d1 * т));
Readln
край.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!