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
*)