Encrypter & Decrypter C# Exercise - C# Programming Course

 Exercise

Encrypter & Decrypter

 Objetive

Create a class "Encrypter" to encrypt and decrypt text.

It will have a "Encrypt" method, which will receive a string and return another string. It will be a static method, so that we do not need to create any object of type "Encrypter".

There will be also a "Decrypt" method.

In this first approach, the encryption method will be a very simple one: to encrypt we will add 1 to each character, so that "Hello" would become "Ipmb", and to decrypt we would subtract 1 to each character.

An example of use might be

string newText = Encrypter.Encrypt("Hola");

 Example Code

// Importing the System namespace which contains basic system functionalities like Console for input/output
using System;

public class Encrypter
{
    // Static method to encrypt the input text
    public static string Encrypt(string input)
    {
        // Variable to store the encrypted text
        string encryptedText = "";

        // Loop through each character of the input text
        foreach (char c in input)
        {
            // Convert the character to its ASCII value and add 1 to it
            encryptedText += (char)(c + 1);
        }

        // Return the encrypted text
        return encryptedText;
    }

    // Static method to decrypt the input text
    public static string Decrypt(string input)
    {
        // Variable to store the decrypted text
        string decryptedText = "";

        // Loop through each character of the input text
        foreach (char c in input)
        {
            // Convert the character to its ASCII value and subtract 1 from it
            decryptedText += (char)(c - 1);
        }

        // Return the decrypted text
        return decryptedText;
    }

    // Main method to test the encryption and decryption
    public static void Main()
    {
        // Original text to encrypt
        string originalText = "Hola";

        // Encrypt the text
        string encryptedText = Encrypt(originalText);
        Console.WriteLine($"Encrypted text: {encryptedText}");

        // Decrypt the text
        string decryptedText = Decrypt(encryptedText);
        Console.WriteLine($"Decrypted text: {decryptedText}");
    }
}

More C# Exercises of OOP More On Classes

 Array of objects: table
Create a class named "Table". It must have a constructor, indicating the width and height of the board. It will have a method "ShowData" which will wr...
 House
Create a class "House", with an attribute "area", a constructor that sets its value and a method "ShowData" to display "I am a house, my area is 200 m...
 Table + coffetable + array
Create a project named "Tables2", based on the "Tables" project. In it, create a class "CoffeeTable" that inherits from "Table". Its method "ShowDa...
 Complex numbers
A complex number has two parts: the real part and the imaginary part. In a number such as a+bi (2-3i, for example) the real part would be "a" (2) and ...
 Table + coffetable + leg
Extend the example of the tables and the coffee tables, to add a class "Leg" with a method "ShowData", which will write "I am a leg" and then it will ...
 Catalog
Create the classes diagram and then, using Visual Studio, a project and the corresponding classes for a catalog utility: It will be able to store i...
 Random number
Create a class RandomNumber, with three static methods: - GetFloat will return a number between 0 and 1 using the following algorithm: seed = (s...
 Text to HTML
Create a class "TextToHTML", which must be able to convert several texts entered by the user into a HTML sequence, like this one: Hola Soy yo Ya ...
 Class ScreenText
Create a class ScreenText, to display a certain text in specified screen coordinates. It must have a constructor which will receive X, Y and the strin...
 Enhanced ComplexNumber class
Improve the "ComplexNumber" class, so that it overloads the operators + and - to add and subtract numbers....
 3D point
Create a class "Point3D", to represent a point in 3-D space, with coordinates X, Y and Z. It must contain the following methods: MoveTo, which will...
 Catalog + Menu
Improve the Catalog program, so that "Main" displays a menu to allow entering new data of any kind, as well as displaying all the data stored....

Juan A. Ripoll - Programming Tutorials and Courses © 2025 All rights reserved.  Legal Conditions.