Aplicacions amb Flutter, Dart i Flame

Tutorial Flutter Flame Projectes   Recursos CITCEA
Exemples Dart Dades pràctiques     Inici

Funcions matemàtiques

Tenim algunes funcions matemàtiques útils

Funció Utilitat Comentaris
round Arrodoneix a l'enter més proper Si està just al mig, agafa el més allunyat de zero
floor Arrodoneix a l'enter inferior
ceil Arrodoneix a l'enter superior
truncate Arrodoneix suprimint els decimals
roundToDouble Arrodoneix a l'enter més proper i ho deixa en format de nombre real Si està just al mig, agafa el més allunyat de zero
floorToDouble Arrodoneix a l'enter inferior i ho deixa en format de nombre real
ceilToDouble Arrodoneix a l'enter superior i ho deixa en format de nombre real
truncateToDouble Arrodoneix suprimint els decimals i ho deixa en format de nombre real
clamp Ajusta el valor al rang especificat Si el valor està fora del rang, agafa el límit més proper del rang
2.clamp(5, 10)   // dona 5, perquè 2 està per sota del rang

La biblioteca math de Dart ens ofereix diverses funcions matemàtiques addicionals:

Funció Utilitat Comentaris
sin Sinus Paràmetre en radians
cos Cosinus Paràmetre en radians
tan Tangent Paràmetre en radians
asin Arcsinus Resultat en radians
acos Arccosinus Resultat en radians
atan Arctangent Resultat en radians
atan2 Arctangent amb dos paràmetres atan2(y, x) = Arctangent(y/x)
Resultat en radians
exp Exponencial ex
log Logaritme natural
pow Potència pow(x, y) = xy
sqrt Arrel quadrada Resultat sempre positiu
max Valor més alt entre dos arguments
min Valor més baix entre dos arguments

Nota: En totes les funcions que requereixen un argument real, si l'argument no ho és s'hi convertirà automàticament.

També hi ha implementats alguns valors constants:

Constant Explicació
e Nombre e, base dels logaritmes naturals
pi Nombre π
ln10 Logaritme natural de 10
ln2 Logaritme natural de 2
log10e Logatitme decimal del nombre e
log2e Logatitme en base 2 del nombre e
sqrt2 Arrel quadrada de 2
sqrt1_2 Arrel quadrada de 1/2

Valors aleatoris

A la biblioteca math de Dart hi ha la funció Random que permet crrear resultats aleatoris; dona tres possibilitats:

Funció Utilitat Exemple
nextInt Enter aleatori entre 0 (inclòs) i el valor donat com a paràmetre (exclòs) int aleat = Random().nextInt(10);
Resultat >= 0 i < 10
nextDouble Real aleatori entre 0 i 1 (exclòs) double aleat = Random().nextDouble();
Resultat >= 0 i < 1
nextBool Booleà aleatori bool aleat = Random().nextBool();
Resultat true o false

Important: Aquestes funcions no generen valors totalment aleatoris però sí valors pseudoaleatoris.

Podem crear un generador de nombres pseudoaleatoris i després fer-lo servir al llarg del programa.

import 'dart:math' as math;
...
  final rand = math.Random();  // Generador de valors aleatoris
...
    aleat = rand.nextDouble();
...

 

 

 

 

 

 

 

 

 

 

Llicència de Creative Commons
Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.