Нужно 8 бит. 129 словам присваиваем номера от 0 до 128 в десятичной системе. 0(10)=0(2), 128(10)=10000000(2). Если словам присваивать номера от 1 до 129, то понадобится тоже 8 бит, только 129(10)=10000001(2)
Для перевода можно пользоваться простым методом
129/2 = 64 с остатком, записываем 1
64/2 =32 без остатка, записываем 0
32/2 =16 без остатка, записываем 0
16/2 =8 без остатка, записываем 0
8/2 =4 без остатка, записываем 0
4/2 =2 без остатка, записываем 0
2/2 =1 без остатка, записываем 0
1/2 =0 с остатком, записываем 1
Т.е. делим каждое частное на 2 и записываем наличие остатка в конец двоичной записи в виде остаток есть-1, остатка нет-0. Деленим до тех пор, пока в частном не будет 0. Результат записывается справа налево.
Var
age: integer;
begin
writeln('Сколько вам лет?');
readln(age);
if age >= 18 then
writeln('Замечательно. Вы уже можете водить автомобиль')
else
writeln('К сожалению, водить автомобиль вам рано');
end.
Объяснение:
во вложении....
^ – не ставится, но действие выполняется!
Program Zvezda;
Uses GraphABC;
begin SetBrushColor(clYellow); Line(290, 111, 240, 190); Line(240, 190, 171, 190); Line(170, 190, 241, 250); Line(241, 250, 209, 320); Line(209, 320, 290, 289); Line(290, 289, 369, 318); Line(369, 318, 340, 248); Line(340, 248, 410, 190); Line(410, 190, 340, 190); Line(340, 190, 289, 111); Line(289, 113, 289, 289); Line(242, 249, 341, 190); Line(340, 249, 242, 190); Line(171, 191, 290, 220); Line(291, 220, 411, 191); Line(209, 319, 290, 222); Line(290, 222, 369, 321); End.