Bonjour

Alors voila mon problème j’ai fait une fonction on matlab et je veux la récrire sur C++ builder mai j’arrive pas a la faire jusque maintenant es que vous pouvez m’aider a la réécrire on C++ ? car je me bloque et je suis vraiment debutante en C++

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
y=[ 0.123 1.45 0.67];
%------------- propriéterde signal --------
 
long = length(y);  % longeur de signal  exple = 3 
x    = (1:long); % némorité le nombre   x= [ 1 2 3]
var=1;
presition = 10 ; 
 
% ----------- variable constante de morlet ---------  
precis = 10; 
[val_WAV,xWAV] = intwave('morl',precis);
stepWAV = xWAV(2)-xWAV(1);
xMaxWAV=16;
%---------------- Clacule de cofisiant ---------------
  signal = y' ;
  coefs     = zeros(3,3); 
  ind=1;
  for i=1:3
      a=i;
      j = 1+floor((0:a*16)/(a*stepWAV));
      size(j)
      f = fliplr(val_WAV(j));
      coefs(ind,:) = -sqrt(a)*wkeep1(diff(wconv1(y,f)),3);
      ind = ind +1 ; 
  end 
  %-------------
  coefs
avec matlab ça donne cette résultat :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
coefs =
 
    0.1611   -0.1142   -0.2464
   -0.3223    0.0428    0.3312
   -0.6138    0.2950    0.6813
et voila mon essé sur C++ builder

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
Void __fastcall TForm1::Button1Click(TObject *Sender)
{
double signal[3];
double *buffer;
// ------------------ propriéter de signal --------------
int longeur;
int x[3] ;
int var=1;
int presition = 10 ;
signal[1]=  0.123;
signal[2]=  1.45;
signal[3]=  0.67;
longeur=3;
for (int i=0; i<longeur ; i++)
    x[i]=i+1;
 
//---------------------------------------------------------
//----------------- variable constante de morlet----------
int xMaxWAV=16;
// ---------------- Calcule de cofessiant -----------
double Coef[3][3];
int indicateur
int var
indicateur=1;
for (int i=0; i<17 ; i++)
    buffer[i]=i+1;
for ( i=1;i<4;i++ )
  {
  var=i;
  int decimal =1+floor
  ....
  }
}
je suis bloqué