patryk_szwed

clientPart2

May 20th, 2019
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.51 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.ServiceModel;
  5. using System.Text;
  6. using System.Threading;
  7. using System.Threading.Tasks;
  8. using client.ServiceReference1;
  9. using client.ServiceReference2;
  10.  
  11. namespace client
  12. {
  13. class Program
  14. {
  15. static void Main(string[] args)
  16. {
  17. // CCalculatorClient client1 = new CCalculatorClient("endpoint1");
  18. //
  19. // /*
  20. // * addCNum()
  21. // */
  22. // ComplexNum lz1 = new ComplexNum();
  23. // Console.WriteLine("Provide numbers for addCNum(): ");
  24. // Console.WriteLine("First number: ");
  25. // Console.WriteLine("Real part: ");
  26. // lz1.realPart = Convert.ToDouble(Console.ReadLine());
  27. // Console.WriteLine("Imaginary part: ");
  28. // lz1.imagPart = Convert.ToDouble(Console.ReadLine());
  29. // ComplexNum lz2 = new ComplexNum();
  30. // Console.WriteLine("Second number: ");
  31. // Console.WriteLine("Real part: ");
  32. // lz2.realPart = Convert.ToDouble(Console.ReadLine());
  33. // Console.WriteLine("Imaginary part: ");
  34. // lz2.imagPart = Convert.ToDouble(Console.ReadLine());
  35. //
  36. // Console.WriteLine("\nCLIENT1");
  37. // Console.WriteLine("...called addCNum(...)");
  38. // ComplexNum result1 = client1.addCNum(lz1, lz2);
  39. // Console.WriteLine(" addCNum(...) = ({0},{1})",
  40. // result1.realPart, result1.imagPart);
  41. //
  42. // /*
  43. // * subtractCNum
  44. // */
  45. // ComplexNum lz3 = new ComplexNum();
  46. // Console.WriteLine("Provide numbers for subtractCNum(): ");
  47. // Console.WriteLine("First number: ");
  48. // Console.WriteLine("Real part: ");
  49. // lz3.realPart = Convert.ToDouble(Console.ReadLine());
  50. // Console.WriteLine("Imaginary part: ");
  51. // lz3.imagPart = Convert.ToDouble(Console.ReadLine());
  52. // ComplexNum lz4 = new ComplexNum();
  53. // Console.WriteLine("Second number: ");
  54. // Console.WriteLine("Real part: ");
  55. // lz4.realPart = Convert.ToDouble(Console.ReadLine());
  56. // Console.WriteLine("Imaginary part: ");
  57. // lz4.imagPart = Convert.ToDouble(Console.ReadLine());
  58. //
  59. // Console.WriteLine("...called subtractCNum(...)");
  60. // ComplexNum result2 = client1.subtractCNum(lz3, lz4);
  61. // Console.WriteLine(" subtractCNum(...) = ({0},{1})",
  62. // result2.realPart, result2.imagPart);
  63. //
  64. // /*
  65. // * multiplyCNum
  66. // */
  67. // ComplexNum lz5 = new ComplexNum();
  68. // Console.WriteLine("Provide numbers for multiplyCNum(): ");
  69. // Console.WriteLine("First number: ");
  70. // Console.WriteLine("Real part: ");
  71. // lz5.realPart = Convert.ToDouble(Console.ReadLine());
  72. // Console.WriteLine("Imaginary part: ");
  73. // lz5.imagPart = Convert.ToDouble(Console.ReadLine());
  74. // ComplexNum lz6 = new ComplexNum();
  75. // Console.WriteLine("Second number: ");
  76. // Console.WriteLine("Real part: ");
  77. // lz6.realPart = Convert.ToDouble(Console.ReadLine());
  78. // Console.WriteLine("Imaginary part: ");
  79. // lz6.imagPart = Convert.ToDouble(Console.ReadLine());
  80. //
  81. // Console.WriteLine("...called multiplyCNum(...)");
  82. // ComplexNum result3 = client1.multiplyCNum(lz5, lz6);
  83. // Console.WriteLine(" multiplyCNum(...) = ({0},{1})",
  84. // result3.realPart, result3.imagPart);
  85. //
  86. // /*
  87. // * divideCNum
  88. // */
  89. // ComplexNum lz7 = new ComplexNum();
  90. // Console.WriteLine("Provide numbers for divideCNum(): ");
  91. // Console.WriteLine("First number: ");
  92. // Console.WriteLine("Real part: ");
  93. // lz7.realPart = Convert.ToDouble(Console.ReadLine());
  94. // Console.WriteLine("Imaginary part: ");
  95. // lz7.imagPart = Convert.ToDouble(Console.ReadLine());
  96. // ComplexNum lz8 = new ComplexNum();
  97. // Console.WriteLine("Second number: ");
  98. // Console.WriteLine("Real part: ");
  99. // double x;
  100. // x = Convert.ToDouble(Console.ReadLine());
  101. // while (x == 0)
  102. // {
  103. // Console.WriteLine("Can't divide by 0! Provide another number.");
  104. // x = Convert.ToDouble(Console.ReadLine());
  105. // }
  106. // lz8.realPart = x;
  107. // Console.WriteLine("Imaginary part: ");
  108. // double y;
  109. // y = Convert.ToDouble(Console.ReadLine());
  110. // while (y == 0)
  111. // {
  112. // Console.WriteLine("Can't divide by 0! Provide another number.");
  113. // y = Convert.ToDouble(Console.ReadLine());
  114. // }
  115. // lz8.imagPart = y;
  116. //
  117. // Console.WriteLine("...called divideCNum(...)");
  118. // ComplexNum result4 = client1.divideCNum(lz7, lz8);
  119. // Console.WriteLine(" divideCNum(...) = ({0},{1})",
  120. // result4.realPart, result4.imagPart);
  121. //
  122. //
  123. // Console.WriteLine("... call of function1:");
  124. // client1.Function1("Client1");
  125. // Thread.Sleep(10);
  126. // Console.WriteLine("...continue after function1 call");
  127. // Console.WriteLine("...call of function2:");
  128. // client1.Function2("Client1");
  129. // Thread.Sleep(10);
  130. // Console.WriteLine("...continue after function2 call");
  131. // Console.WriteLine("...call of function1:");
  132. // client1.Function1("Client1");
  133. // Thread.Sleep(10);
  134. // Console.WriteLine("...continue after function1 call");
  135. // Console.WriteLine("CLIENT1 - STOP");
  136. // client1.Close();
  137.  
  138. Console.WriteLine("\nCLIENT2:");
  139.  
  140. CallbackHandler myCallbackHandler = new CallbackHandler();
  141. InstanceContext instanceContext = new InstanceContext(myCallbackHandler);
  142. CallbackKalkulatorClient client2 = new CallbackKalkulatorClient(instanceContext);
  143.  
  144. Console.WriteLine("Provide upper limit number to find the largest prime number in this range:");
  145. string userInput;
  146. userInput = Console.ReadLine();
  147. int primeN;
  148. bool isNumerical = int.TryParse(userInput, out primeN);
  149. while (!isNumerical)
  150. {
  151. Console.WriteLine("Provide valid number!");
  152. userInput = Console.ReadLine();
  153. isNumerical = int.TryParse(userInput, out primeN);
  154. }
  155. Console.WriteLine("...call of Function1({0})...", primeN);
  156. client2.Function1(primeN);
  157.  
  158. int n, k;
  159. Console.WriteLine("Provide numbers to calculate binomial coefficient:");
  160. Console.WriteLine("n:");
  161.  
  162. userInput = Console.ReadLine();
  163. isNumerical = int.TryParse(userInput, out n);
  164. while (!isNumerical)
  165. {
  166. Console.WriteLine("Provide valid number!");
  167. userInput = Console.ReadLine();
  168. isNumerical = int.TryParse(userInput, out n);
  169. }
  170. Console.WriteLine("k:");
  171. userInput = Console.ReadLine();
  172. isNumerical = int.TryParse(userInput, out k);
  173. while (!isNumerical)
  174. {
  175. Console.WriteLine("Provide valid number!");
  176. userInput = Console.ReadLine();
  177. isNumerical = int.TryParse(userInput, out k);
  178. }
  179. Console.WriteLine("...call of Function2({0}, {1})...", n, k);
  180. client2.Function2(n, k);
  181.  
  182. Console.WriteLine("...now I'm waiting for results");
  183. int secs;
  184. if (primeN < 10000 && n < 10000 && k < 10000)
  185. {
  186. secs = 5000;
  187. }
  188. else
  189. {
  190. secs = 10000;
  191. }
  192. Thread.Sleep(secs);
  193.  
  194. client2.Close();
  195. Console.WriteLine("CLIENT2 - STOP");
  196. }
  197. }
  198.  
  199. class CallbackHandler : ICallbackKalkulatorCallback
  200. {
  201. public void Function1CB(long result)
  202. {
  203. Console.WriteLine("The largest prime number = " + result);
  204. }
  205.  
  206. public void Function2CB(double result)
  207. {
  208. Console.WriteLine("Binomial coefficient = " + result);
  209. }
  210. }
  211. }
Add Comment
Please, Sign In to add comment