Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/11/2018, 21:05
Avatar de detective_jd
detective_jd
 
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años
Puntos: 6
Respuesta: Mensaje militar en C#

Hola tuadmin gracias por responder, en vista a lo que me dijiste miré en internet esta página y encontré la respuesta a mis problemas:

The Java Substring Function vs. the C# Substring Function

Adapté al código y funcionó, pongo el código por si a alguien le interesa:

Código C#:
Ver original
  1. using System;
  2. namespace _12_STRING
  3. {
  4.     class Program {
  5.         /**
  6.          * Código de: https://algoritmosjavafc.blogspot.com/2013/11/manejo-de-cadenas.html
  7.          *
  8.          * 12. Un grupo de inteligencia militar desea codificar los mensajes
  9.          * secretos de tal forma que no puedan ser interpretados con una lectura
  10.          * directa, para lo cual han establecido las siguientes reglas:
  11.           a) Todo mensaje debe estar sus letras en mayúsculas.
  12.           b) Reemplazar cada letra por la que sigue según abecedario, excepto Z
  13.             que se deberá reemplazar con la letra A.
  14.           c) reemplazar cada dígito encontrado por el siguiente numero excepto el
  15.             9 que deberá ser reemplazado por el 0.
  16.         */
  17.         static void Main(string[] args) {
  18.             String mensaje, cod1="", caracter;
  19.             String ABC="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  20.             String numeros="0123456789";
  21.             Console.Clear();
  22.             Console.WriteLine("Ingrese el mensaje: ");
  23.             mensaje= Console.ReadLine();
  24.             mensaje= mensaje.ToUpper();
  25.             for (int i = 0; i < mensaje.Length; i++) {
  26.                 caracter=mensaje.Substring(i,(i+1) - i);
  27.                 if(caracter.Equals(" ")){
  28.                     cod1=cod1+caracter;
  29.                 } else {
  30.                     for (int j = 0; (j < ABC.Length); j++) {
  31.                         if(caracter.Equals(ABC.Substring(j,(j+1) - j))){
  32.                             if(caracter.Equals("Z")){
  33.                                 cod1=cod1+"A";
  34.                                 break;
  35.                             } else {
  36.                                 cod1=cod1+ABC.Substring((j+1),(j+2) - (j+1));
  37.                                 break;
  38.                             }
  39.                         }
  40.                     }
  41.                     for (int k = 0; k <numeros.Length; k++) {
  42.                         if(caracter.Equals(numeros.Substring(k,(k+1) - k))){
  43.                             if(caracter.Equals("9")){
  44.                                 cod1=cod1+"0";
  45.                                 break;
  46.                             } else {
  47.                                 cod1=cod1+numeros.Substring((k+1),(k+2) - (k+1));
  48.                                 break;
  49.                             }
  50.                         }
  51.                     }
  52.                 }          
  53.             }
  54.             Console.WriteLine("\n MENSAJE INGRESADO: "+mensaje);
  55.             Console.WriteLine("\n CÓDIGO RESULTANTE: "+cod1);
  56.         }
  57.     }
  58. }

Muchas gracias por tu tiempo y respuesta. Saludos.
__________________
Si te interesa, visita mi perfil de Linkedin. Gracias