How to find the smallest and largest digits in a number in Pascal

1 Answer

0 votes
program MinMaxDigits;

{$mode objfpc}

(*
  Finds the smallest and largest digits in a number.

  Parameters:
    Number   - Input number
    MinDigit - Stores the smallest digit
    MaxDigit - Stores the largest digit
*)
procedure FindMinMaxDigits(Number: Integer; var MinDigit, MaxDigit: Integer);
var
  Digit: Integer;
begin
  MinDigit := 9;
  MaxDigit := 0;

  while Number > 0 do
  begin
    Digit := Number mod 10;  { Extract the last digit }

    if Digit < MinDigit then
      MinDigit := Digit;

    if Digit > MaxDigit then
      MaxDigit := Digit;

    Number := Number div 10; { Remove the last digit }
  end;
end;

var
  Number, MinDigit, MaxDigit: Integer;

begin
  Number := 839516;

  FindMinMaxDigits(Number, MinDigit, MaxDigit);

  Writeln('Number: ', Number);
  Writeln('Smallest digit: ', MinDigit);
  Writeln('Largest digit: ', MaxDigit);
end.


(*
run:

Number: 839516
Smallest digit: 1
Largest digit: 9

*)

 



answered 1 day ago by avibootz
...