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 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
| bool CompareSerial(char ident[], char serial[], char code[])
{
///////////////////////////////
// Déclaration des variables //
///////////////////////////////
///////////////////////////
// Tableau de caractères //
///////////////////////////
char tm[2], ts[2];
char szMySerial[60];
char t[3];
char u[4];
char v[4];
////////////
// Entiés //
////////////
int m, s, lgIdent;
int i;
int a, x;
//////////////////////////////////
// Initialisation des variables //
//////////////////////////////////
tm[0] = code[0];
tm[1] = code[1];
ts[0] = code[2];
ts[1] = code[3];
m = atoi(tm);
s = atoi(ts);
////////////////////////////////////////////
// Initialiser la variable szMySerial à 0 //
////////////////////////////////////////////
ZeroMemory(&szMySerial, sizeof(szMySerial));
////////////////////////////
// Opérations sur le code //
////////////////////////////
while(m > 10)
{
m=m-10;
}
while(s > 10)
{
s=s-10;
}
////////////////////////////
// Opérations sur l'ident //
////////////////////////////
lgIdent = strlen(ident);
for(i=0; i<lgIdent; i++)
{
a = ident[i];
if(a <= 90 && a >= 65)
{
a = a + 32;
ident[i] = a;
}
}
for(i=0; i<lgIdent; i++)
{
a = ident[i];
x = a % 2;
if(x == 1)
{
if(a > 110)
{
x = ident[i] - m;
sprintf(t, "%c", x);
}
else
{
x = ident[i] + m;
sprintf(t, "%c", x);
}
strcat(szMySerial, t);
}
else
{
ZeroMemory(&u, sizeof(u));
x = ident[i] - 90;
if(x > 15)
{
x = x - s;
sprintf(u, "%d", x);
}
else
{
sprintf(v, "%d", s);
sprintf(u, "%d", x);
strcat(u, v);
}
strcat(szMySerial, u);
}
}
a = strcmp(szMySerial, serial);
if(a == 0)
{
return true;
}
else
{
return false;
}
} |
Partager