АТ
Анна Тарасова

Паскаль

Преобразовать
делящиеся на 7 числа из диапазона [20, 50] в двоичные. Подскажите, что делает строка (s:=Chr(b mod 2+48)+s;)и почему именно эти цифры 2+48(b mod 2+48),для чего это. var i,b:Integer;s:string;

begin

for i:=20 to 50 do

if i
mod 7=0 then

begin

Write(i,'-');

b:=i;

s:='';

while b1 do

begin

s:=Chr(b mod
2+48)+s;

b:=b div
2;

end;

s:='1'+s;

Writeln(s);

end;

end.

Ал
Александр

все очень просто, в паскале используется таблица ASCII, в этой таблице у каждого символа есть свой соответствующий код, код 48 соответствует цифре 0, единица же, логично 49..Функция Chr("код символа") выдает как раз значение соответствующему коду. b mod 2 - это остаток от деления на ноль, он может быть либо 0, либо 1. Но так как нулю и единице соответствуют коды в таблице 48 и 49, поэтому и прибавляется 48, чтобы получить 0 и 1.

Похожие вопросы
Как выучить Паскаль?
Для того кто шарит в Паскале
Информатика (паскаль)
как написать в паскале. как написать в паскале
паскаль паскаль паскаль
Нужна помощь Турбо Паскаль или Паскаль АВС
Паскаль
Паскаль
Паскаль Как обозначить число>=x>число в паскале?
Можно ли написать паскаль на паскале???