Veig dos nombres iguals i en canvi si pregunto si són
iguals la Wiris em diu que no. Pot ser degut a la precisió
amb què treballo? Podria ser, perň més aviat cal tenir en compte la relació
entre la comanda anterior i la tolerància amb
què es comproven les igualtats.
En la configuració per defecte de la calculadora Wiris els nombres decimals es mostren amb precisió 5. Això vol dir que es mostren les cinc primeres xifres significatives. Tanmateix, és interessant saber que en realitat el treball intern es fa amb més xifres significatives (cosa que segurament sabeu que també passa amb les calculadores científiques.)
Com es comenta en la pràctica 2 del mòdul 1 del curs D112, si volem canviar en nombre de xifres significatives amb què es mostren els nombres decimals tenim la comanda precisió(n) on n ha de ser un nombre enter entre 1 i 15, inclosos. Vegeu:
El fet que, internament, els nombres decimals "tinguin" més xifres que les que es mostren en pantalla pot portar com a conseqüència que dos nombres que "veiem" iguals, en realitat no ho siguin. La imatge següent està feta amb precisió 5.
El cas és que la resposta que dóna la Wiris a la pregunta A == B ? (o d'altres de semblants amb desigualtats) estan condicionades al grau de rigor amb què volem treballar. Totes i tots sabem que en moltes situacions pràctiques es pot prendre p = 3.14 (en aquest cas podem dir que treballem "fins al segon decimal", el grau de tolerància és de 10-2), d'altres vegades es pren p = 3.1416 (llavors la tolerància quan diem "igual" és de 10-4).
En la configuració per defecte de la Wiris la tolerància amb què es treballa quan es vol tenir una resposta sobre igualtats o desigualtats és de 10-12. És a dir que A == B ? contesta cert si el valor absolut de A - B és més petit que 10-12.
La comanda tolerància(r), on r és un nombre real positiu, fa que es A == B ? esdevingui cert si el valor absolut de A - B és més petit que r.
Podeu obrir una finestra activa de la Wiris amb un exemple
que il·lustra les definicions anteriors.