erreur variable corrupted
Bonsoir,
J'ai le code suivant qui permet de compter le nombre de fois où la variation dépasse la valeur 1 dans une itération bien définit.
Le code marche bien, sauf à la fin où j'obtiens l'erreur "Run-time check failure #2 - stack around the variable 'r' was corrupted. Je pense que la réponse doit être toute bête, peut-être faut-il détruire l'array r ?
J'utilise Visual Studio 2015.
D'avance merci
Code:
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 44 45 46 47 48 49 50 51
| #include <iostream>
#include <math.h>
using namespace std;
int main()
{
int cpt = 0;
double max;
double min;
double dist;
double r[1000];
for (int i = 0; i < 1001; i++)
{
r[i] = sin((i + 1.0) / 100.0) + cos((i + 1.0) / 50.0) + ((i + 1.0) / 2000.0)*cos((i + 1) / 2.0);
}
max = r[0];
min = r[0];
for (int i = 1; i < 1000; i++)
{
if (r[i] > max)
{
max = r[i];
dist = abs(max - min);
if (dist > 1)
{
cpt++;
max = r[i];
min = r[i];
}
}
if (r[i] < min)
{
min = r[i];
dist = abs(max - min);
if (dist > 1)
{
cpt++;
max = r[i];
min = r[i];
}
}
}
cout << "The number is " << cpt << endl;
return 0;
} |