AD

¿Ya dominas lo básico? Un curso estructurado de VB.NET es la vía rápida para dar el salto.

Ver cursos de VB.NET en Udemy

Enlace de afiliado. No te cuesta nada extra.

🔷Lecciones de VB.NET
Lección 34 / 68

Construir un cifrado César

En esta lección desplazarás cada letra unas posiciones en el alfabeto.

Se recorren los caracteres con For Each, y para las mayúsculas se desplaza el código con AscW y ChrW. El Mod 26 hace que después de la Z se vuelva a la A.

El código de ejemplo desplaza tres posiciones un texto en mayúsculas.

Fíjate en StringBuilder para ir acumulando el resultado. En .NET las cadenas son inmutables, así que concatenar dentro de un bucle crea una cadena nueva en cada vuelta. Con textos largos la diferencia de rendimiento es enorme, y es de los consejos más repetidos del ecosistema.

Char.IsUpper es más legible que comparar códigos numéricos, y además maneja bien el alfabeto completo.

Con el español hay que ser consciente de una limitación: el desplazamiento sobre el rango de la A a la Z no cubre la Ñ ni las vocales acentuadas, así que esas letras pasan sin cifrar. Es lo que hace el cifrado César clásico, pensado para 26 letras.

Y que quede claro: esto no es seguridad. Se rompe probando 25 posibilidades. Para cifrar de verdad, .NET ofrece System.Security.Cryptography.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar VB.NET directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)