Section courante

A propos

Section administrative du site

Parmi les fonctions trigonométriques disponibles dans QuickBASIC, on retrouve notamment le sinus (Sin), le cosinus (Cos), la tangente et l'arc tangente (ATN). Toutefois, contrairement à plusieurs langages de programmation modernes ou à certaines bibliothèques mathématiques spécialisées, QuickBASIC ne propose aucune fonction intégrée permettant de calculer directement l'arc cosinus, généralement désigné par les noms ArcCos ou ACos. Cette absence peut devenir problématique lorsque l'on souhaite effectuer des calculs de géométrie, de physique, de cartographie ou de trigonométrie avancée faisant intervenir cette fonction mathématique. En effet, l'arc cosinus joue un rôle important dans de nombreux domaines scientifiques puisqu'il permet de déterminer l'angle correspondant à une valeur donnée du cosinus. On le retrouve notamment dans les calculs de distances géographiques, les problèmes liés aux vecteurs, les modèles tridimensionnels, la navigation et diverses applications d'ingénierie. Heureusement, même lorsqu'une fonction n'est pas fournie nativement par un langage, il est souvent possible de la reconstruire à partir d'autres fonctions mathématiques déjà disponibles.

Dans le cas de QuickBASIC, la fonction ATN, calculant l'arc tangente, peut être utilisée pour créer une implémentation complète de l'arc cosinus. Le programme présenté ci-dessous montre comment obtenir cette fonctionnalité en combinant des opérations trigonométriques et algébriques appropriées. Une attention particulière est également portée aux cas limites où la valeur fournie est égale à 1 ou à -1, situations pour lesquelles certaines formules classiques peuvent entraîner des divisions impossibles ou des erreurs numériques. Grâce à cette approche, il devient possible de disposer d'une fonction ACos entièrement compatible avec les besoins des calculs scientifiques. L'exemple fourni utilise la valeur 0,5 comme paramètre d'entrée. Lors de l'exécution, le programme retourne la valeur 1,047197580337524, qui correspond à l'arc cosinus de 0,5 exprimé en radians, soit un angle de 60 degrés. Cet exemple illustre parfaitement comment étendre les capacités mathématiques de QuickBASIC à l'aide de quelques lignes de code seulement et démontre qu'il est possible de reconstituer des fonctions avancées même lorsqu'elles ne sont pas directement incluses dans le langage. Pour les programmeurs réalisant des applications scientifiques ou techniques, cette technique constitue un outil particulièrement utile pour enrichir leur bibliothèque de fonctions mathématiques.

Pour remédier à se problème, il suffit de créer une fonction ressemblant à ceci :

  1. DECLARE FUNCTION ACos! (a!)
  2. CONST PI = 3.141592653589793#
  3.      
  4. PRINT ACos(.5)
  5.  
  6. FUNCTION ACos (a)
  7.    IF ABS(a) = 1 THEN
  8.       ACos = (1 - a) * PI / 2
  9.    ELSE
  10.       ACos = ATN(-a / SQR(1 - a * a)) + 2 * ATN(1)
  11.    END IF
  12. END FUNCTION

La dernière ligne contient une instruction «PRINT» retournant la valeur 1.047197580337524 lors de l'exécution de se petit programme.



Dernière mise à jour : Mercredi, le 14 septembre 2016