Raku kurss / Objekti, ievade/izvade un izņēmumi / Izņēmumi / Mīkstās kļūmes / Exercises / Mīkstais apgrieztais skaitlis
Risinājums: Mīkstais apgrieztais skaitlis
Šeit ir iespējams risinājums uzdevumam.
Kods
sub reciprocal($n) {
fail 'no reciprocal of zero' if $n == 0;
return 1 / $n;
}
say reciprocal(4);
say reciprocal(0) // 'undefined';🦋 Atrodiet programmu failā soft-divide.raku.
Izvade
0.25
undefinedKomentāri
reciprocal(4)parastā kārtā atgriež1 / 4, tas ir,0.25.reciprocal(0)izsaucfail, tāpēc tā atgriežFailure, kas ir nedefinēts. Operators//atgriež savu labās puses operandu ikreiz, kad kreisā puse ir nedefinēta, tāpēc iegūstam atkāpšanās vērtībuundefined.//lietošana skaitās neveiksmes apstrādāšana: tā pārbauda definētību, vērtību neizmantojot, tāpēcFailurepaliek mīksts un nekad netiek izmests kā īsts izņēmums.