Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Text;
- using System.Text.RegularExpressions;
- namespace ConsoleApp1
- {
- class Program
- {
- static void Main(string[] args)
- {
- var artistRegex = new Regex("^[A-Z][a-z'\\s]+$");
- var songsRegex = new Regex("^[A-Z\\s]+$");
- var input = Console.ReadLine();
- while (input != "end")
- {
- var inputAsArray = input.Split(':');
- var artist = inputAsArray[0];
- var song = inputAsArray[1];
- if (!artistRegex.IsMatch(artist) || !songsRegex.IsMatch(song))
- {
- Console.WriteLine("Invalid input!");
- }
- else
- {
- var key = artist.Length;
- var output = new StringBuilder();
- foreach (var artistChar in artist)
- {
- if (artistChar == ' ' || artistChar == '\'')
- output.Append(artistChar);
- else
- {
- output.Append(GetChar(artistChar, key));
- }
- }
- output.Append('@');
- foreach (var songChar in song)
- {
- if (songChar == ' ' || songChar == '\'')
- output.Append(songChar);
- else
- {
- output.Append(GetChar(songChar, key));
- }
- }
- Console.WriteLine($"Successful encryption: {output.ToString()}");
- }
- input = Console.ReadLine();
- }
- }
- private static char GetChar(char ch, int key)
- {
- for (int i = 0; i < key; i++)
- {
- if (ch == 90)
- {
- ch = (char) 65;
- }
- else if (ch == 122)
- {
- ch = (char) 97;
- }
- else
- {
- var currentAsciiCode = (int) ch;
- currentAsciiCode++;
- ch = (char) currentAsciiCode;
- }
- }
- return ch;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement