Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth
Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

42,709 questions

55,473 answers

573 users

How to convet decimal number base-12 number in Pascal

1 Answer

0 votes
program DecimalToBase12;

// Reverses a string manually
function ReverseString(s: String): String;
var
  i: Integer;
  reversed: String;
begin
  reversed := '';
  for i := Length(s) downto 1 do
    reversed := reversed + s[i];
  ReverseString := reversed;
end;

// Converts a decimal number to base-12 and returns it as a string
function DecimalToBase12(decimalNumber: Integer): String;
const
  digits: array[0..11] of Char = ('0','1','2','3','4','5','6','7','8','9','A','B'); // Base-12 digits (A = 10, B = 11)
var
  base12: String;
  remainder: Integer;
begin
  if decimalNumber = 0 then
  begin
    DecimalToBase12 := '0';
    Exit;
  end;

  base12 := '';
  while decimalNumber > 0 do
  begin
    remainder := decimalNumber mod 12;
    base12 := base12 + digits[remainder];
    decimalNumber := decimalNumber div 12;
  end;

  // Reverse to get the correct order
  DecimalToBase12 := ReverseString(base12);
end;

var
  decimalNumber: Integer;
  base12Number: String;

begin
  decimalNumber := 100;
  base12Number := DecimalToBase12(decimalNumber);

  WriteLn('Base-12 representation: ', base12Number);

  decimalNumber := 19621;
  base12Number := DecimalToBase12(decimalNumber);

  WriteLn('Base-12 representation: ', base12Number);
end.



(*
run:

Base-12 representation: 84
Base-12 representation: B431

*)

 



answered Sep 10, 2025 by avibootz
edited Sep 11, 2025 by avibootz

Related questions

1 answer 90 views
1 answer 89 views
1 answer 88 views
1 answer 82 views
1 answer 105 views
1 answer 104 views
...