How to write a recursive function that divides two numbers in Pascal

1 Answer

0 votes
program RecursiveDivision;

function Divide(dividend, divisor: Integer): Integer;
begin
    // Handle division by zero
    if divisor = 0 then
    begin
        WriteLn('Error: Division by zero');
        Halt; // Terminate the program
    end;

    // Base case: If the dividend is less than the divisor, return 0
    if dividend < divisor then
        Divide := 0
    else
        // Recursive case: Subtract divisor from dividend and add 1 to the result
        Divide := 1 + Divide(dividend - divisor, divisor);
end;

var
    dividend, divisor, result: Integer;
begin
    dividend := 28;
    divisor := 4;

    // Call the recursive function
    result := Divide(dividend, divisor);

    WriteLn('Result of division: ', result);
end.



(*
run:

Result of division: 7

*)

 



answered Apr 6 by avibootz
...