Operatoren, vergelijkingen en voorwaarden
Deze pagina behandelt symbolen en woorden die waarden combineren: rekenen, rekenvolgorde, vergelijkingen met true of false, en logische en bitsgewijze operatoren. Gebruik dit bij onverwachte uitkomsten of om de notitie iets te laten controleren, bijvoorbeeld of je binnen budget blijft.
Rekenbewerkingen
| Operator | Schrijfwijzen | Voorbeeld | Resultaat |
|---|---|---|---|
| Optellen | +, plus |
£12.50 + £4.30 |
£16.80 |
| Aftrekken | -, −, minus |
£20 - £4.50 |
£15.50 |
| Vermenigvuldigen | *, ×, times, multiplied by, direct naast elkaar schrijven |
3 × £4.50, 2(3 + 4) |
£13.50, 14 |
| Delen | /, ÷, divided by |
£60 / 4 |
£15.00 |
| Machtsverheffen | ^, **, to the power of, raised to, exponent |
2 ** 3, 2 raised to 10 |
8, 1,024 |
| Rest | mod, % (tussen twee getallen) |
50 mod 6, 50 % 6 |
2 |
| Vierkantswortel | √, sqrt(...), square root of |
√144 |
12 |
| Kwadraat / derde macht | ², ³ |
3³ |
27 |
| Faculteit | !, factorial(...) |
5!, factorial(5) |
120 |
Rekenen werkt met gewone getallen, geld en hoeveelheden met eenheden. Het resultaat behoudt valuta of eenheid:
£12.50 + £4.30 geeft £16.803 * £4.50 geeft £13.50£1,000 * 1.05^3 geeft £1,157.636 times 7 geeft 42100 minus 37.5 geeft 62.5Naast elkaar schrijven betekent * weglaten, zoals 2(3 + 4) of 2π. Impliciete vermenigvuldiging legt uit wanneer dat werkt.
Volgorde van bewerkingen
Berekeningen volgen de gebruikelijke rekenvolgorde:
- Haakjes.
- Faculteiten, zoals
5!. - Machten, van rechts naar links:
2^3^2is2^9, dus 512. - Een voorafgaand minteken, toegepast na de macht:
-2^2is -4;(-2)^2is 4. - Vermenigvuldigen, delen en
mod, van links naar rechts. - Optellen en aftrekken, van links naar rechts.
* weglaten verandert deze volgorde niet. 2x^2 kwadrateert eerst x en verdubbelt daarna, zoals een formule in een leerboek.
Een vermenigvuldiging gaat dus vóór een naburige optelling, wat bij een rekening kan verrassen:
£85 - £12.50 * 2 geeft £60.00(£85 - £12.50) * 2 geeft £145.00£120 / 4 / 2 geeft £15.00Gebruik bij twijfel haakjes. Ze kunnen geen kwaad en maken de notitie later duidelijker.
Een wortelteken geldt voor de waarde direct erna: √9 + 16 is 19. Zet de hele uitdrukking tussen haakjes voor de wortel van een som:
√(9 + 16) geeft 5Resten
mod geeft de rest na delen. Handig om dingen in groepen te verdelen:
eggs = 50eggs mod 6 geeft 2floor(eggs / 6) geeft 8Vijftig eieren vullen acht dozen van zes, met twee over.
% tussen twee getallen betekent ook rest bij deling, zelfs zonder spatie vóór het tweede getal: 50 % 6 en 50% 6 geven beide 2. % zonder iets erachter vormt een percentage (50%); zie Percentages.
Faculteiten
Zet ! direct achter een getal, naam of sluithaakje voor de faculteit:
5! geeft 120runners = 4runners! geeft 243! + 2 geeft 85!=4 geeft trueFaculteiten gaan vóór een aangrenzende macht: 2^3! is 2⁶, dus 64. ! gevolgd door = blijft “niet gelijk”, zoals de laatste regel toont. factorial(5) geeft hetzelfde als 5!.
Vergelijking
==, !=, <, <=, > en >= vergelijken waarden en geven true of false. Ze werken op gewone getallen, bedragen in dezelfde valuta en hoeveelheden van dezelfde grootheid, ook met verschillende eenheden:
budget = £400spent = £365spent <= budget geeft truespent == budget geeft falsespent != budget geeft true5 km == 5,000 m geeft true90 min >= 1.5 hours geeft true2 kg < 2,500 g geeft trueEenheden worden vóór vergelijken omgerekend: 1 mile > 1.5 km is true. Verschillende grootheden, zoals kilogram en meter, vergelijken geeft de fout incompatible units.
Wat vergelijkingen niet doen
- Ketens.
5 < x < 10wordt niet ondersteund. Combineer twee vergelijkingen:5 < x && x < 10. - Unicode-symbolen.
≠,≤en≥worden niet herkend. Gebruik!=,<=en>=. - Datums. Twee datums vergelijken met
<of>kan niet. Trek ze af en vergelijk het verschil met een tijdsduur:
deadline = 30 September 2026booked = 14 September 2026deadline - booked geeft 2 weeks 2 daysdeadline - booked >= 7 days geeft trueLogische operatoren
Verbind vergelijkingen met && (beide moeten waar zijn) of || (minstens één moet waar zijn). De woorden and en or werken hetzelfde tussen twee vergelijkingen.
distance = 5 kmrun time = 27 mindistance >= 5 km && run time < 30 min geeft truedistance >= 10 km || run time < 25 min geeft falsedistance >= 10 km or run time < 30 min geeft trueJe kunt true en false direct schrijven en combineren met && en ||:
true || false geeft truetrue && false geeft falseEnkele verwachte vormen worden niet ondersteund:
andenorwerken alleen tussen vergelijkingen.true and falsewerkt niet; schrijftrue && false.- Er is geen ontkenningsoperator:
not trueen!truewerken niet. Vergelijk metfalse, zoals(spent > budget) == false. oris geen terugval bij fouten:1/0 or 5geeft geen 5.
Vergelijkingen gebruiken in voorwaarden
Een vergelijking is vooral handig in if … then … else …, dat afhankelijk van de uitkomst een waarde kiest:
basket = £34.50if basket >= £40 then £0 else £3.99 geeft £3.99Voorwaarden behandelt alle syntaxis, inclusief else if, achtergeplaatst if en unless, en toewijzingen binnen een tak.
Bitsgewijze operatoren
Gehele getallen ondersteunen bitsgewijze operatoren & (en), | (of), xor, << (links verschuiven) en >> (rechts verschuiven). Ook de hoofdletterwoorden AND, OR en XOR werken. Dit is vooral nuttig bij programmeren, bijvoorbeeld voor kleurwaarden en bestandsrechten.
12 & 10 geeft 812 | 10 geeft 1412 xor 10 geeft 612 AND 10 geeft 81 << 10 geeft 1,0241024 >> 3 geeft 128Het resultaat verschijnt als gewoon getal. Voeg to binary, in hex of to octal toe voor het gewenste talstelsel:
0o644 | 0o111 to octal geeft 0o755colour = 0xFF8800(colour >> 8) & 0xFF geeft 136Bitverschuivingen gaan vóór &, | en xor, maar haakjes maken bijvoorbeeld de kleurregel veel leesbaarder.
Alles combineren
Een maandbudgetcontrole die rekenen, vergelijken en logica combineert:
# September budgettake home = £2,400rent = £1,050bills = £230groceries = 4 * £65 geeft £260.00left over = take home - rent - bills - groceries geeft £860.00rent / take home as % geeft 43.75%left over > £500 geeft trueleft over > £500 && rent <= take home * 45% geeft truegroceries vermenigvuldigt voordat er wordt opgeteld; left over trekt van links naar rechts af. De laatste twee regels controleren het plan: het resultaat blijft true zolang meer dan £500 over is en de huur binnen 45% van het netto-inkomen blijft. Zodra een van beide niet meer geldt, wordt het false.