Zamiana systemu na 8

0

program ghj;
{$APPTYPE CONSOLE}
function baza(x:longint) :string;
var
liczba :string;
N :integer;
begin
N:=1;
while x>0 do
begin

liczba := char(ord('0') + (x mod 8)) + liczba;
x := x div 8;
inc(N);
end;
baza := liczba;
end;
var
temp :longint;
begin
readln(temp);
writeln(baza(temp));
readln;
end.

Witam, program zamienia system 10 na 8 tylko niewiem jak to sie pokolei dzieje staram sie go zrozumiec, ale tego pogrubionego zapisu nie rozumie, wiem jak liczyc div, mod itp ale liczba:= nie czaje jak on to robi, z góry dziekuje za pomoc

0

liczba := char(ord('0') + (x mod 8)) + liczba; - zapis ten oznacza dopisanie na początku łańcucha 'liczba' wyniku (x mod 8). do wyniku dzielenia dodany jest ord('0') aby uzyskać numer znaku ascii.

1 użytkowników online, w tym zalogowanych: 0, gości: 1