diff --git a/README.md b/README.md index a6175ef168344b86f188a18508953a19a99905aa..2d1b9c41923012afbfa630e7c4d6a442f1a20a56 100644 --- a/README.md +++ b/README.md @@ -24,16 +24,33 @@ Vous devez réaliser des fonctionnalités sur les calculs vectoriels (dans un pr - [ ] `norm()` pour calculer la norme d'un vecteur - [ ] `t()` pour retourner la vesion transposée - [ ] `dot()` pour retourner le produit scalaire de deux vecteurs (en notation matricielle) -- [ ] `get()` pour retourner un élément +- [ ] `get()` pour retourner un élément (le premier élément se trouve en position 0) - [ ] `set()` en tant que méthode non publique pour modifier une valeur - [ ] `map()` pour retourner une version transformée -- [ ] `removed()` pour retourner une sans un des éléments - [ ] `concat()` pour concatener deux vecteurs - [ ] `copy()` pour copier un vecteur - [ ] `slice(), sliceTo(), sliceFrom()` pour les opérations de slicing +- [ ] `removed()` pour retourner une sans un des éléments - [ ] `toString()` et `equals()` pour une représentation et la comparaison de vecteur +- [ ] Toutes ces fonctionnalités doivent exister sur un **vecteur transposé**. +- [ ] Retourne RuntimeException() avec un message approprié en cas d'erreurs + +##### Vecteur + +```math +\vec{x} = \begin{bmatrix} + x_1 \\ x_2 \\ ... \\ x_n +\end{bmatrix} +``` -Toutes ces fonctionnalités doivent exister sur un vecteur transposé. + +##### Transposée + +```math +\vec{x}^t = \begin{bmatrix} + x_1 & x_2 & ... & x_n +\end{bmatrix} +``` ##### Produit scalaire en notation matricielle @@ -56,6 +73,14 @@ Toutes ces fonctionnalités doivent exister sur un vecteur transposé. \end{pmatrix} = \lVert \vec{v} \rVert = \sqrt{v_1^2 + v_2^2 + ... + v_n^2} ``` +##### Map + +```math +map(\vec{x}, f) = \begin{bmatrix} + f(x_1) \\ f(x_2) \\ ... \\ f(x_n) +\end{bmatrix} +``` + ### Opérations statiques (méthodes de classes) (Regardez les tests unitaires pour comprendre comment elles fonctionnent)