C Programlama Dilinde Sayı Şifreleme Algoritması

C programlama dilinde sayı şifreleme algoritma ve kodlamasının nasıl yapılacağına dair kodlar aşağıda verilmiştir. Bu kodların .c uzantılı dosyası ve .exe uzantılı windows işletim sisteminde çalışan dosyasını da dilerseniz aşağıdan indirebilirsiniz.

#include <stdio.h>
#include <stdlib.h>
int sifrele(int *x,int y)
{ /*y sayinin basamak değeridir. Ana programdan gelir. Tekrar değeri basamakların kaçar defa
yer değiştireceğini tutar.Örneğin 4 basamaklı bir sayı birler ve onlar ile yüzler ve binler olmak
üzere 2 sefer yer değiştir. 5 basamaklı sayıda aynı şekilde olur.while döngüsü ile basamaklar
çifterli olarak yer değiştiri.1234 sayısı 2341 şekline gelmelidir*/
int i=0,tekrar,gecici,j=0;
tekrar=y/2;
while(i<tekrar)
{
gecici=x[j];
x[j]=x[j+1];
x[j+1]=gecici;
j=j+2;
i++;
}
//sayının basamakları 7 ile çarpılıp mod 10'u alınır
for (i=0;i<y;i++)
{
x[i]=(x[i]*7)%10;
}
return x;
}
int sifre_coz(int *x,int y)
{
int i,tekrar,gecici,j=0;
/*rakamların 3 ile çarpılıp mod 10'larının alınması 7 ile çarpılıp mod 10larının alınmasının
ters işlemidir*/
for(i=0;i<y;i++)
{
x[i]=(x[i]*3)%10;
}
i=0;
tekrar=y/2;
while(i<tekrar)
{
gecici=x[j];
x[j]=x[j+1];
x[j+1]=gecici;
j=j+2;
i++;
}
return x;
}
int main()
{
int dizi[50],i,N,*sifreli,*cozumlu;
printf("Sayi kac basamakli olacak ");//dizisi olarak kullanıcıdan alınır
scanf("%d",&N);
puts("Elemanlari girin:");
for(i=0;i<N;i++)
{
printf("%d.eleman = ",i+1);
scanf("%d",&dizi[i]);
}
//sifrelenmis dizinin fonksiyondan dönderilip yazdırılıması
printf("sifrelenmis sayi=");
sifreli=sifrele(dizi,N);
for (i=0;i<N;i++)
{
printf("%d ",sifreli[i]);
}
printf("\n");
//çözümlenmiş dizinin fonksiyondan dönderilip yazdırılıması
printf("sifresi cozulmus sayi=");
cozumlu=sifre_coz(sifreli,N);
for (i=0;i<N;i++)
{printf("%d ",cozumlu[i]);
}
getch();
}

sayı-şifreleme.c dosyasını indirmek için buraya tıklayınız.

sayı-şifreleme.exe dosyasını indirmek için buraya tıklayınız.