Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace ProxyPattern
- {
- class Program
- {
- static void Main(string[] args)
- {
- Console.WriteLine("Enter your number: ");
- int number = int.Parse(Console.ReadLine());
- IConverter proxy = new ConverterProxy();
- Console.WriteLine($"Decimal: {number}");
- Console.WriteLine($"Binary: {proxy.ConvertToBinary(number)}");
- Console.WriteLine($"Octal: {proxy.ConvertToOctal(number)}");
- Console.WriteLine($"Hex: {proxy.ConvertToHex(number)}");
- }
- }
- interface IConverter
- {
- string ConvertToBinary(int number);
- string ConvertToHex(int number);
- string ConvertToOctal(int number);
- }
- class ConverterProxy : IConverter
- {
- private readonly IConverter converter;
- public ConverterProxy()
- {
- converter = new Converter();
- }
- public string ConvertToBinary(int number)
- {
- return converter.ConvertToBinary(number);
- }
- public string ConvertToHex(int number)
- {
- return converter.ConvertToHex(number);
- }
- public string ConvertToOctal(int number)
- {
- return converter.ConvertToOctal(number);
- }
- }
- class Converter : IConverter
- {
- public string ConvertToBinary(int number)
- {
- return Convert.ToString(number, 2);
- }
- public string ConvertToHex(int number)
- {
- return Convert.ToString(number, 16);
- }
- public string ConvertToOctal(int number)
- {
- return Convert.ToString(number, 8);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement