Bonjour.
Tout d'abord, je suis désolé si la réponse (sans doute évidente) est déjà disponible quelque part, je n'ai pas réussi à la trouver.
Mon problème est le suivant :
Je cherche à travailler sur des vecteurs de dimention 3, donc des tableaux à 3 éléments. L'exemple le plus basique serait de multiplier et de diviser un vecteur par un entier.
Pour ça, j'utilise le code suivant :
Ce code marche parfaitement si on prend un seul double plutôt qu'un tableau, mais dans le cas étudié, ça ne marche plus (il semble qu'il ne reconaisse pas les double & x[3] comme entrées de la fonction).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 #include <iostream> #include <fstream.h> #include <math.h> #include <cstdlib> #include <time.h> #include <stdio.h> #include <stdlib.h> #include <time.h> #include <vector.h> using namespace std; // Division de x par a : void produit (int & a, double & x[3], double & p[3], double & d[3]) { for (int i=0;i<3;i++) { p[i]=x[i]*a; d[i]=x[i]/a; } } int main () { double y[3]; int b=2; double prod[3]; double div[3]; double y2[3]; int b2=6; double p2[3]; double d2[3]; for (int i=0;i<3;i++) { y[i]=8*i+2; y2[i]=3*i+4; } // Multiplication et division de y par b produit(b,y,prod,div); // Multiplication et division de y2 par b2 produit(b2,y2,p2,d2); for (i=0;i<3;i++) { cout<<prod[i]<<" "<<div[i]<<endl; cout<<p2[i]<<" "<<d2[i]<<endl; } }
Peut-être y a t-il d'autre moyen de coder ça qu'en utilisant une fonction void, mais là encore, je n'en ai pas trouvé.
Bref, j'ai conscience que ce doit être tout bête, mais ... Je débute vraiment. Si quelqu'un connait un code efficace pour ce genre de problème, merci d'avance.
Partager