Kurso de Raku / Esencoj / Bazoj de variabloj kaj datumtipoj / Nombroj
Operacioj kun nombroj
Sendube vi jam konas kelkajn el la operacioj, kiujn vi povas fari kun Raku-nombroj. Nur por mencii, ke la simbolo de la operacio estas nomata operaciilo. La objektoj, sur kiuj ni faras operaciojn, estas nomataj operandaj.
Aritmetiko
Operaciilo | Operacio
+ | Adicio - | Subtraho * |
Multipliko / | Divido
Ĉar Raku subtenas Unikodon tre bone, kelkaj el ĉi tiuj operaciiloj havas ne-ASCII-ekvivalentojn:
× | Multipliko ÷ | Divido
Por ŝanĝi la ordon de ekzekuto, uzu krampojn:
say 3 * 4 + 5; # 17
say 3 * (4 + 5); # 27Modulo
La modulo-operaciilo estas % kiel en multaj aliaj
lingvoj.
% | Modulo
Ĝi redonas la reston de la entjera divido de du nombroj, do
10 % 3 estas 1. Notu, ke -10 % 3
estas 2, ĉar la rezulto de la operacio estas difinita kiel
la diferenco inter la unua nombro kaj la malsupren-rondigita divido
multiplikita per la dua nombro. Do, $a % $b estas
ekvivalenta al $a - $b * floor($a / $b).
Dividebleco
Raku aldonas utilan operaciilon por testi ĉu la nombro estas dividebla per alia nombro.
%% | Dividebleco
Ĉi tio estas infiksa operaciilo, kiu bezonas du operandajn:
10 %% 3. Se la unua operando estas dividebla per la dua
operando, la rezulto estas Boolea True. Alie,
False.
Entjeraj operacioj
Estas specialaj operacioj, kiuj redonas entjerajn rezultojn. Iliaj operaciiloj estas vortoj anstataŭ simboloj.
div | Entjera divido mod | Entjera
modulo
La div operaciilo rondigas malsupren la rezulton, do
10 div 3 estas 3, kaj -10 div 3
estas -4.
Ambaŭ div kaj mod atendas entjerajn
operandajn. Do, la sekva programo ne funkcios se vi malkomentas la
liniojn markitajn kiel Eraro:
say 10.3 % 3; # OK
# say 10.3 mod 3; # Eraro
say 10.3 / 3.3; # OK
# say 10.3 div 3.3; # EraroPotenco
Estas du manieroj por akiri la rezulton de x al la potenco
de y. Unue, vi povas uzi la ** operaciilon:
say 3 ** 4; # 81Due, vi povas uzi superskribitajn ciferojn, ekzemple:
say 3⁴; # 81Eblas meti pli ol unu superskribitan ciferon por akiri la valoron de potenco pli granda ol 9. Ekzemple:
say 2¹⁵; # 32768Negativa potenco ne estas problemo ankaŭ:
say 2 ** (-2); ## 0.25
say 2⁻²; # 0.25Notu, ke la rezulto de la lastaj du esprimoj estas Rat
nombro.
Operacioj kun asigno
Ĉiuj operacioj subtenas la mallongigan sintakson kiam vi bezonas
ĝisdatigi la variablon. Ni demonstru ĝin per la ekzemplo de
+.
La plena formo
$a = $a + $b;estas ekvivalenta al:
$a += $b;Kursa navigado
← Flosantaj nombroj | Poma divido →
💪 Aŭ iru rekte al la ekzercoj de ĉi tiu
sekcio.