Цитата Loading:
PS. А еще я про системы счисления писал задание, алгоритм пояснить можешь как её написать?! »
|
В основе алгоритма операторы div и mod. Вот примерная работа, с использованием цикла.
Код:

Program dec2hex;
Uses crt;
Var i :integer; Hex, tHex :string;
Begin
Hex:='';
Write ('Enter your natural decimal number: ');
Readln (i);
repeat
Str(i mod 2,tHex);
Hex:=Hex+tHex;
i:=(i div 2);
until (i=1);
Str(i mod 2,tHex);
Hex:=Hex+tHex;
write (Hex);
End.
Это не готовая прога, хоть тут ответ и можно получить, но в зеркальном варианте. К примеру, если ввести 13 то получим
1011, правильный ответ будет
1101. Ну это уже самостоятельно. Идея такая же как и при делении в столбик, только результат деления и остачу складываем в переменную типа строчка.
С GoTo
Меняем на
Код:

Readln (i);
Label startPos
{repeat}
…
{until (i=1);}
If (i<>1) GoTo startPos
Только я у меня компиллер заладил Error in statement на Лейбл, хотя вроде по справке делал.