Instructions
Create a function safe_divide that divides two numbers.
If division by zero occurs, return nil instead of raising an error.
Use begin/rescue to catch exceptions:
ruby
begin
# risky code
rescue ZeroDivisionError
# handle error
end
Hints:
- Wrap the division in begin/rescue
- Catch ZeroDivisionError specifically
- Return nil in the rescue block
Your Code
def safe_divide(a, b)
begin
a / b
rescue ZeroDivisionError
nil
end
end
RSpec.describe "safe_divide" do
it "divides normally" do
expect(safe_divide(10, 2)).to eq(5)
end
it "returns nil for division by zero" do
expect(safe_divide(10, 0)).to be_nil
end
it "handles negative numbers" do
expect(safe_divide(-10, 2)).to eq(-5)
end
end
Results
Click "Run Tests" to see results
1 / 4
Next: Multiple Rescue