перевод из десятичной в двоичную паскаль



Автор Vlad May задал вопрос в разделе Другие языки и технологии

перевести число десятичной системы в двоичную ПАСКАЛЬ и получил лучший ответ

Ответ от Денис Назаренко[мастер]
var
n,i: integer;
s:string;
begin
repeat
readln(n);
until(n > 0);
while n > 0 do begin
if n mod 2 = 0 then
s:= s + '0'
else begin
s:= s + '1';
n:= n - 1;
end;
n:= n div 2;
end;
for i:= length(s) downto 1 do
write(s);
end.
Как то так. можно использовать для записи остатков так же и массив. Впринципе, разница небольшая 🙂
P.S. Пожалуйста, не оставляйте вопрос не решенным.
Источник: учусь на программиста 🙂

Ответ от Георгий Зотиков[гуру]
если у Дениса убрать строчку for i:= length(s) downto 1 do, то будет работать

Ответ от Manunich[гуру]
Тут всё проще) var n:integer;s:String; begin readln(n); while n>0 do begin insert(chr(48+n mod 2),s,1); n:=n div 2; end; writeln(s); end.

Ответ от DiG DeePeR[гуру]
Можно и без mod и div (для ценителей) : function IntToBin2(Value: integer): string; var i: integer; begin Result:= ''; for i:= 0 to Trunc(Ln(Value)/Ln(2)) do Result:= IntToStr((Value and (1 shl i) shr i))+Result; e

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: перевести число десятичной системы в двоичную ПАСКАЛЬ
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*