Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using RSDN;
  7. using System.Threading;
  8. using System.Diagnostics;
  9.  
  10. namespace OS_Lab3
  11. {
  12. class Program
  13. {
  14. static double k;
  15. static void cOut()
  16. {
  17.  
  18. double a = Math.Truncate(k);
  19. double b = k - a;
  20. b *= 100;
  21. b = Math.Abs(b);
  22. Console.WriteLine(" " + RusCurrency.Str(a) +"целых "+ RusCurrency.Str(b)+"сотых");
  23.  
  24. }
  25.  
  26. static void Main(string[] args)
  27. {
  28.  
  29. k = Convert.ToDouble(Console.ReadLine());
  30.  
  31. Thread newThread = new Thread(cOut);
  32. Thread newThread2 = new Thread(cOut);
  33.  
  34. Stopwatch stp = new Stopwatch();
  35. Stopwatch stp2 = new Stopwatch();
  36.  
  37. newThread.Priority = ThreadPriority.Highest;
  38. newThread2.Priority = ThreadPriority.AboveNormal;
  39.  
  40. stp.Start();
  41. newThread.Start();
  42. stp.Stop();
  43.  
  44. stp2.Start();
  45. newThread2.Start();
  46. stp.Stop();
  47.  
  48. newThread.Join();
  49. newThread2.Join();
  50.  
  51. Console.WriteLine("Первый поток (highest) - " + stp.ElapsedTicks+ " тактов "+ "\n" +
  52. "Второй поток (above normal) - " + stp2.ElapsedTicks +" тактов ");
  53. Console.ReadKey();
  54. }
  55. }
  56. }
  57.  
  58. public static string Str(double val, bool male,
  59. string seniorOne, string seniorTwo, string seniorFive,
  60. string juniorOne, string juniorTwo, string juniorFive)
  61. {
  62. bool minus = false;
  63. if (val < 0) { val = -val; minus = true; }
  64.  
  65. int n = (int)val;
  66. int remainder = (int)((val - n + 0.005) * 100);
  67.  
  68. StringBuilder r = new StringBuilder();
  69.  
  70. if (0 == n) r.Append("0 ");
  71. if (n % 1000 != 0)
  72. r.Append(RusNumber.Str(n, male, seniorOne, seniorTwo, seniorFive));
  73. else
  74. r.Append(seniorFive);
  75.  
  76. n /= 1000;
  77.  
  78. r.Insert(0, RusNumber.Str(n, false, "тысяча", "тысячи", "тысяч"));
  79. n /= 1000;
  80.  
  81. r.Insert(0, RusNumber.Str(n, true, "миллион", "миллиона", "миллионов"));
  82. n /= 1000;
  83.  
  84. r.Insert(0, RusNumber.Str(n, true, "миллиард", "миллиарда", "миллиардов"));
  85. n /= 1000;
  86.  
  87. r.Insert(0, RusNumber.Str(n, true, "триллион", "триллиона", "триллионов"));
  88. n /= 1000;
  89.  
  90. r.Insert(0, RusNumber.Str(n, true, "триллиард", "триллиарда", "триллиардов"));
  91. if (minus) r.Insert(0, "минус ");
  92.  
  93. r.Append(remainder.ToString("00 "));
  94. r.Append(RusNumber.Case(remainder, juniorOne, juniorTwo, juniorFive));
  95.  
  96. //Делаем первую букву заглавной
  97. r[0] = char.ToUpper(r[0]);
  98.  
  99. return r.ToString();
  100. }
  101. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement