Kurso de Raku / Esencoj / Datentipa konvertado / Ekzercoj / Veraj kaj falsaj nombroj

Solvo: Veraj kaj falsaj nombroj

Por konverti numeron al Boolea valoro, vi povas uzi aŭ la prefiksan operatoron ? aŭ konstruan formon, aŭ voki la metodon Bool, aŭ la rutinon so kiel prefiksan operatoron aŭ metodon:

my $value = 42;
say ?$value;
say Bool($value);
say $value.Bool;
say so $value;
say $value.so;

Estas sufiĉe evidente, ke ne-nulaj valoroj estas konvertitaj al True. Ni do plej interesas rigardi tiujn opciojn, kiuj fariĝas False.

Ĉiuj nuloj, entjeraj, komaj, aŭ raciaj, estas konvertitaj al False:

my Int $int-zero = 0;
say ?$int-zero; # False

my Rat $rat-zero = 0.0;
say ?$rat-zero; # False

my Num $num-zero = 0e0;
say ?$num-zero; # False

Kompreneble, nenio ŝanĝiĝas se vi provas unue nei la numeron:

my $int = 0;
say ?(-$int); # False

🦋 Vi povas trovi la plenan programon kun la supra ekzemplo en la dosiero true-false-numbers.raku.

Sekva ekzerco

💪 Veraj kaj falsaj stringoj

Kurso navigado

Ripetoj / Postfixa formo de for   |   Tipitaj variabloj

Ĉi tiu paĝo estas aŭtomate tradukita per ChatGPT 4o. Originala angla teksto

Tradukoj de ĉi tiu paĝo: EnglishDeutschEspañolItalianoLatviešuNederlandsБългарскиРусскийУкраїнська