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
|
int calcul_de_c()
{
int i;
int j;
FILE *ficbi;
unsigned long B[8];
FILE *fp;
char tampon[512];
char ligne_lue[512];
int nombre_de_ligne = 0;
unsigned long C[8];
int h;
ficbi = fopen("cle_publique.txt","r");
if (ficbi != NULL)
{
printf("\n\n Pour le cryptage, la suite B(i) sera : \n\n");
fscanf(ficbi,"%d %d %d %d %d %d %d %d ",&B[1] ,&B[2] ,&B[3] ,&B[4] ,&B[5] ,&B[6] ,&B[7] ,&B[8]);
printf(" ");
for (h=1;h<9;h++)
{
printf("%d ",B[h]);
}
printf("\n\n");
system("PAUSE");
}
fp=fopen("texte_bin","r");
if ((fp = fopen("texte_bin.txt","r")) == NULL)
{
printf("Impossible d'ouvir le fichier\n\n");
return 0;
}
else
{
// Calcule le nombre de lignes dans le fichier texte
while(fgets(ligne_lue, sizeof(ligne_lue), fp) != NULL)
{
nombre_de_ligne++;
}
// Positionne le curseur au début du fichier
fseek(fp,0,SEEK_SET);
for ( i = 0 ; i < nombre_de_ligne ; i++)
{
// Lire les données mises en forme
fscanf(fp,"%s",tampon);
C[i]=0;
for ( j = 0 ; j < 8 ; j++)
{
// Calcul le résultat voulu
if (tampon[j] == '1')
C[i] += B[j];
}
printf("\n\n");
// Affiche le contenu du fichier
printf("%s",tampon);
// Affiche les résultats voulus
printf(" ---> C (%d) = %d ",(i+1),C[i]);
}
printf("\n\n CRYPTAGE OK !!!\n La suite de C est sauvegardee dans texte_crypte.txt\n\n");
FILE * f = fopen("texte_crypte.txt", "w");
if (f != NULL)
{
for (i=0;i<nombre_de_ligne;i++)
{
fprintf(f, "%d ",C[i]);
}
fclose(f);
}
printf("\n\n");
printf("\n\n");
}
system("PAUSE");
} |
Partager