Advertisement
Guest User

Untitled

a guest
Jan 27th, 2020
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1. using System;
  2.  
  3. namespace ProxyPattern
  4. {
  5. class Program
  6. {
  7. static void Main(string[] args)
  8. {
  9. Console.WriteLine("Enter your number: ");
  10. int number = int.Parse(Console.ReadLine());
  11. IConverter proxy = new ConverterProxy();
  12.  
  13. Console.WriteLine($"Decimal: {number}");
  14. Console.WriteLine($"Binary: {proxy.ConvertToBinary(number)}");
  15. Console.WriteLine($"Octal: {proxy.ConvertToOctal(number)}");
  16. Console.WriteLine($"Hex: {proxy.ConvertToHex(number)}");
  17.  
  18. }
  19. }
  20.  
  21. interface IConverter
  22. {
  23. string ConvertToBinary(int number);
  24.  
  25. string ConvertToHex(int number);
  26.  
  27. string ConvertToOctal(int number);
  28. }
  29.  
  30. class ConverterProxy : IConverter
  31. {
  32. private readonly IConverter converter;
  33.  
  34. public ConverterProxy()
  35. {
  36. converter = new Converter();
  37. }
  38.  
  39. public string ConvertToBinary(int number)
  40. {
  41. return converter.ConvertToBinary(number);
  42. }
  43.  
  44. public string ConvertToHex(int number)
  45. {
  46. return converter.ConvertToHex(number);
  47. }
  48.  
  49. public string ConvertToOctal(int number)
  50. {
  51. return converter.ConvertToOctal(number);
  52. }
  53. }
  54.  
  55. class Converter : IConverter
  56. {
  57. public string ConvertToBinary(int number)
  58. {
  59. return Convert.ToString(number, 2);
  60. }
  61.  
  62. public string ConvertToHex(int number)
  63. {
  64. return Convert.ToString(number, 16);
  65. }
  66.  
  67. public string ConvertToOctal(int number)
  68. {
  69. return Convert.ToString(number, 8);
  70. }
  71. }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement