Aller au contenu | Aller au menu | Aller à la recherche

blog.ruliane.net

Calculer le maximum de deux nombres sans les comparer

Pour l'exercice, je cherchais s'il est possible de trouver le plus grand de deux nombres sans faire de comparaison. Je crois y être arrivé : on prend la moyenne M des deux nombres, puis y ajoute la distance (positive, donc) entre M et A.

MAX(A,B) = (A+B)/2 + sqrt(A-((A+B)/2)²)

Une fois l'égalité simplifiée :
simplification.png

Si on cherche le minimum des deux nombres, il suffit de soustraire cette distance au lieu de l'ajouter : minimum.png

Je crois que ça fonctionne...