Advertisement
Guest User

ckckck

a guest
Dec 16th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.40 KB | None | 0 0
  1. using System;
  2. using System.Text;
  3. using System.Text.RegularExpressions;
  4.  
  5. namespace ConsoleApp1
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. var artistRegex = new Regex("^[A-Z][a-z'\\s]+$");
  12. var songsRegex = new Regex("^[A-Z\\s]+$");
  13. var input = Console.ReadLine();
  14. while (input != "end")
  15. {
  16. var inputAsArray = input.Split(':');
  17. var artist = inputAsArray[0];
  18. var song = inputAsArray[1];
  19.  
  20. if (!artistRegex.IsMatch(artist) || !songsRegex.IsMatch(song))
  21. {
  22. Console.WriteLine("Invalid input!");
  23. }
  24. else
  25. {
  26. var key = artist.Length;
  27. var output = new StringBuilder();
  28.  
  29. foreach (var artistChar in artist)
  30. {
  31. if (artistChar == ' ' || artistChar == '\'')
  32. output.Append(artistChar);
  33. else
  34. {
  35. output.Append(GetChar(artistChar, key));
  36. }
  37. }
  38.  
  39. output.Append('@');
  40.  
  41. foreach (var songChar in song)
  42. {
  43. if (songChar == ' ' || songChar == '\'')
  44. output.Append(songChar);
  45. else
  46. {
  47. output.Append(GetChar(songChar, key));
  48. }
  49. }
  50.  
  51. Console.WriteLine($"Successful encryption: {output.ToString()}");
  52. }
  53. input = Console.ReadLine();
  54. }
  55.  
  56.  
  57. }
  58.  
  59. private static char GetChar(char ch, int key)
  60. {
  61. for (int i = 0; i < key; i++)
  62. {
  63. if (ch == 90)
  64. {
  65. ch = (char) 65;
  66. }
  67. else if (ch == 122)
  68. {
  69. ch = (char) 97;
  70. }
  71. else
  72. {
  73. var currentAsciiCode = (int) ch;
  74. currentAsciiCode++;
  75.  
  76. ch = (char) currentAsciiCode;
  77. }
  78. }
  79.  
  80. return ch;
  81. }
  82.  
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement