About Us

CSharp · Console

/Program.cs

using System;

public class Program
{
	private static string CaesarCypher(string value, int shift)
	{
		char[] buffer = value.ToCharArray();
		for (int i = 0; i < buffer.Length; i++)
		{
			// Letter.
			char letter = buffer[i];
			if (Char.IsLetter(letter))
			{
				bool isLower = Char.IsLower(letter);

				// Add shift 
				letter = (char)(letter + shift);

				// Subtract 26 on overflow.
				// Add 26 on underflow.
				if (isLower)
				{
					if (letter > 'z')
						letter = (char) (letter - 26);
					else if (letter < 'a')
						letter = (char) (letter + 26);
				}
				else
				{
					if (letter > 'Z')
						letter = (char)(letter - 26);
					else if (letter < 'A')
						letter = (char)(letter + 26);
				}
			}

			// Store.
			buffer[i] = letter;
		}
		return new string(buffer);
	}
	
	public static void Main()
    {
		string secretMessage = @"STGML MK
========

Ow sjw s yjgmh gx .FWL vwnwdghwjk ozg sjw kauc sfv lajwv gx klsjlafy Nakmsd Klmvag, ujwslafy s fwo hjgbwul sfv jmffafy al, bmkl lg lwkl kaehdw ugvw gj ljq gml ksehdwk xjge glzwj vwnwdghwjk.  

Lzak lggd osk afkhajwv tq zllh://bkxavvdw.fwl, ozauz ak bmkl sowkgew.

Ax qgm sjw aflwjwklwv af ogjcafy gf .FWL Xavvdw hdwskw kwfv qgmj jwkmew sfv dafck lg s ugmhdw gx qgmj twkl xavvdwk lg vglfwlxavvdw sl wflwuzkgdmlagfk vgl uge.  Lzw egkl aehjwkkanw xavvdw oadd ywl lzw bgt.

WFLwuz Kgdmlagfk
zllh://ooo.wflwuzkgdmlagfk.uge";
		
		string notSoSecretMessage = CaesarCypher(secretMessage, -18);
		Console.WriteLine(notSoSecretMessage);
    }
}
;