evgeni_tsn

Untitled

Feb 6th, 2016
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.36 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7.  
  8. namespace Problem02.DetectiveBoev
  9. {
  10.     class Program
  11.     {
  12.         static void Main(string[] args)
  13.         {
  14.             string secretWord = Console.ReadLine();
  15.             string encryptedMessage = Console.ReadLine();
  16.             int sumOfDigits = 0;
  17.  
  18.             //THIS IS MASK CALCULATION LOGIC IN METHOD
  19.             var mask = Mask(secretWord);
  20.  
  21.             byte[] encryptedBytes = Encoding.ASCII.GetBytes(encryptedMessage);
  22.  
  23.             for (int i = 0; i < encryptedBytes.Length; i++)
  24.             {
  25.  
  26.                 if (encryptedBytes[i] % mask == 0)
  27.                 {
  28.                     encryptedBytes[i] += (byte)mask;
  29.                 }
  30.                 else
  31.                 {
  32.                     encryptedBytes[i] -= (byte)mask;
  33.                 }
  34.                 //Console.Write(encryptedBytes[i] + " ");
  35.  
  36.             }
  37.             byte[] reversedArrayBytes = new byte[encryptedBytes.Length];
  38.             Array.Reverse(encryptedBytes, 0, encryptedBytes.Length);
  39.             string myString = Encoding.ASCII.GetString(encryptedBytes);
  40.             Console.WriteLine(myString);
  41.             ////byte[] reversedArray = new byte[];
  42.             ////Array.Reverse(reversedArrayBytes);
  43.             //foreach (var token in reversedArrayBytes)
  44.             //{
  45.             //    Console.Write(token);
  46.             ////}
  47.             //for (int i = encryptedBytes.Length - 1; i >= 0; i--)
  48.             //{
  49.             //    Console.WriteLine(encryptedBytes[i] + " ");
  50.             //}
  51.         }
  52.  
  53.         private static int Mask(string secretWord)
  54.         {
  55.             int tempCode = 0;
  56.             foreach (var letter in secretWord)
  57.             {
  58.                 tempCode += letter;
  59.             }
  60.  
  61.             string secretWordToString = tempCode.ToString();
  62.             int mask = 0;
  63.  
  64.             while (secretWordToString.Length > 1)
  65.             {
  66.                 mask = 0;
  67.  
  68.                 for (int i = 0; i < secretWordToString.Length; i++)
  69.                 {
  70.                     mask += Convert.ToInt32(secretWordToString[i].ToString());
  71.                 }
  72.  
  73.                 secretWordToString = mask.ToString();
  74.             }
  75.  
  76.             mask = Convert.ToInt32(secretWordToString);
  77.             return mask;
  78.         }
  79.     }
  80. }
Add Comment
Please, Sign In to add comment