-
Les maths et le C++
Bonsoir à tous,
Je débute actuellement en C++ (j'avais déjà pratiqué un peu le C auparavant donc j'ai quand même quelques bases) et je voulais savoir si dans certains algorithmes, les mathématiques (trigonométrie, nombres complexes, fonctions) sont réellement requises (si oui, avez-vous des exemples ?).
J'aime beaucoup les mathématiques, donc s'il y en a un minimum dans le c++ (hormis la logique et les raisonnements qu'il faut avoir), ça serait génial.
Merci de vos réponses :)
-
Bonjour,
Cela dépend du domaine dans lequel vous utilisez le C++ (et n'importe quel autre langage). Par exemple, dans les jeux vidéo (plus précisément au niveau du rendu, ou du gameplay aussi), on peut avoir besoin de trigonométrie (produit vectoriel, produit scalaire, matrices, quaternion, vecteurs, normalisation). Mais aussi dans d'autres domaines, notamment si vous faites des calculs ... scientifiques, ou de l'analyse de données, vous devrez maitriser les outils tels que les moyennes, moyennes glissante et je ne sais pas quoi d'autres.
Et évidemment, si vous êtes dans de la programmation scientifique, alors là, les nombres complexes peuvent devenir outils à nouveau.
-
D'accord, merci pour cette réponse pertinente ! :D
-
Même dans ces cas-là, tu vas au mieux écrire les formules 1 fois puis simplement utiliser les méthodes qui le font les fois suivantes.
Il faut savoir que ça existe, et comment ça marche, et c'est tout. Pour savoir que faire de tes vecteurs ou matrices.
Tu veux calculer une moyenne ? Crées la collection de données puis appelle computeAverage(data);.
Et les chances que tu écrives la formule diminuent avec le temps, parce qu'elles existent déjà, ont été éprouvées, et sont optimisées.
-
+1 pour Bousk. Mais il en reste que ce sont des mathématiques, dans le sens où, pour faire telle ou telle chose, il faut comprendre comment fonctionne (ce que font) les multiplication de matrice/vecteur ou les cross/dot product. Car, même si on sait les coder (recopier une formule telle quelle), ce sont des outils et il faut savoir à quoi ils servent.
J'imagine (c'est donc une spéculation) que les mathématiciens/physiciens utilisent eux aussi les multiplication de matrice, les dot/cross product (ou encore, les intégrales) comme des outils sans devoir chaque jour les recoder/les redefinir. Bref, ils connaissent les outils et ils savent quand et où les utiliser. Pareil en programmation (pour les cas que j'ai cité), on apprend/connait ces outils spécifiques à tel ou tel domaine, on ne cherche (heureusement) plus à les recoder/redéfinir.
Je pense qu'un des seuls domaines où l'on prend une formule et on la recode, c'est la recherche (notamment pour les ingénieurs de recherche), qui reçoivent la formule d'un thésar/post doc et qui doivent l'implémenter pour valider le travail théorique.
Après, oui, il est intéressant de faire ces précisions.