Précision des calculs dans Calc

Bonsoir,

j'ai demandé à Calc (version 4.3.1 de LibreOffice) de me calculer le
reste dans la division euclidienne de 104^25 par 391 en utilisant la
fonction mod ( =mod(104^25;391) ), le résultat affiché est 135, alors
que le résultat correct est 325.

Excel renvoie #NOMBRE! pour indiquer qu'il ne sait pas faire le calcul.

Y a-t-il quelque part une option qui permet d'avoir un message d'erreur
plutôt qu'une valeur fausse ?

Merci.

Bonsoir,

A ma connaissance, il n'existe pas d'option pour cela.
La norme OASIS ne donne comme contrainte que d'avoir le 2ième argument non
nul.

Il se pose ensuite une question plus générale:
Les nombres étant enregistrés en flottant avec un nombre limité de chiffre
significatifs, les calculs ne sont jamais totalement exacts.

La question est donc la suivante:
Qui doit s'assurer que la précision voulue est la bonne ? Le logiciel ou
l'utilisateur qui doit connaître ce problème quand il manipule de tels
chiffres ?

Je conviens volontiers qu'ici la réponse d'Excel est plus satisfaisante.
Mais attention à ne pas trop compter sur le logiciel, en voici un exemple:

Colonne A, entrer dans les cellules A1 à A3:

=104^25
=104^25/391*391
=104^25/391*391+1000000000

Colonne B, dans les cellules B2 et B3
=A2-A1
=A3-A1

Le résultat est 0 dans les deux cas, ce qui pour B3 est manifestement faux !
Et ceci aussi bien avec Excel (2003) et LO (4.2.6)

De là mon penchant pour répondre "utilisateur" à la question que j'ai posée.

Ceci dit, je ne sais pas comment se fait le calcul en interne de la fonction
MOD, mais il me paraîtrait plus logique d'avoir 0 comme résultat - que l'on
obtient par la formule =104^25-ENT(104^25/391)*391) - ce résultat, même
faux, serait plus susceptible d'attirer l'attention.

Bonne soirée,

Michel

bonsoir,
une piste pour résoudre ce problème avec une extension à Calc,
http://cdeval.free.fr/spip.php?article132
<http://http://cdeval.free.fr/spip.php?article132>
https://forum.openoffice.org/fr/forum/viewtopic.php?f=18&t=29242
<http://https://forum.openoffice.org/fr/forum/viewtopic.php?f=18&t=29242>
cdt

bonsoir,
une piste pour résoudre ce problème avec l'extension CmathOOoCAS,
http://cdeval.free.fr/spip.php?article132
<http://cdeval.free.fr/spip.php?article132>
cdt

Bonsoir,

Merci de ce lien, j'ai réussi assez rapidement à obtenir le bon résultat
attendu par Loïc, soit 325

Ça semble sacrément puissant!

Ma config: LibO 4.2.6.2, Vista 32b; version 2011.08.21 de l'extension
CmathOOoCAS dite modifiée que j'ai attrapée ici:
https://dl.dropboxusercontent.com/u/46279192/MathsSancerni/CmathOOoCAS_modif
i%C3%A9.oxt
J'ai un peu de mal à suivre les diverses versions, mais celle-ci a l'air de
marcher pour les quelques essais que j'ai faits.

Bonne soirée,

Michel

Merci pour vos réponses.

Je prépare des exos pour mes élèves, et je teste avant ce qu'ils
pourraient tenter, d'où ma question et mon étonnement par rapport au
résultat renvoyé (j'avais la réponse par un logiciel de calcul formel),
je suis bien conscient des limitations au niveau du nombre de chiffres
significatifs.

Je vais me pencher sur Cmath, on peut aussi utiliser une version avec
LaTeX (en cours de développement), ça pourrait me simplifier la vie.

Bonne soirée.

bonjour,
une autre piste Cmath pour LuaLaTeX:
https://code.google.com/p/cmathluatex/
<https://code.google.com/p/cmathluatex/>
cdt