Se recomienda revisar Archivos
Encriptar.h
#pragma once
class Encriptar
{
private:
wchar_t abcComun[256], abcNew[256];
bool generarAlfabeto(wchar_t);
int buscarEnAlfabeto(wchar_t[],wchar_t);
public:
System::String^ encriptar(System::String^,wchar_t letra);
System::String^ desencriptar(System::String^,wchar_t letra);
};
Encriptar.cpp
#include "StdAfx.h"
#include "Encriptar.h"
System::String^ Encriptar::encriptar(System::String^ cadena, wchar_t letra)
{
if(generarAlfabeto(letra))
{
System::String^ cadenaEncriptada = "";
for(int i=0;i<cadena->Length;i++)
cadenaEncriptada+=abcNew[buscarEnAlfabeto(abcComun,cadena[i])];
return cadenaEncriptada;
}
else
return "El pivote que ingresó no es válido";
}
System::String^ Encriptar::desencriptar(System::String^ cadena, wchar_t letra)
{
if(generarAlfabeto(letra))
{
System::String^ cadenaDesencriptada = "";
for(int i=0;i<cadena->Length;i++)
cadenaDesencriptada+=abcComun[buscarEnAlfabeto(abcNew,cadena[i])];
return cadenaDesencriptada;
}
else
return "El pivote que ingresó no es válido";
}
bool Encriptar::generarAlfabeto(wchar_t letra)
{
if(int(letra<32))
return false;
else
{
int j = letra;
for(int i=0;i<256;i++)
{
abcComun[i]=wchar_t(i);
if(j==256)
j=0;
abcNew[i]=wchar_t(j);
j++;
}
return true;
}
}
int Encriptar::buscarEnAlfabeto(wchar_t abc[],wchar_t letra)
{
for(int i=0;i<256;i++)
if(abc[i]==int(letra))
return i;
return -1;
}
Descargar la solución completa de Encriptación
No hay comentarios:
Publicar un comentario