Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using RSDN;
- using System.Threading;
- using System.Diagnostics;
- namespace OS_Lab3
- {
- class Program
- {
- static double k;
- static void cOut()
- {
- double a = Math.Truncate(k);
- double b = k - a;
- b *= 100;
- b = Math.Abs(b);
- Console.WriteLine(" " + RusCurrency.Str(a) +"целых "+ RusCurrency.Str(b)+"сотых");
- }
- static void Main(string[] args)
- {
- k = Convert.ToDouble(Console.ReadLine());
- Thread newThread = new Thread(cOut);
- Thread newThread2 = new Thread(cOut);
- Stopwatch stp = new Stopwatch();
- Stopwatch stp2 = new Stopwatch();
- newThread.Priority = ThreadPriority.Highest;
- newThread2.Priority = ThreadPriority.AboveNormal;
- stp.Start();
- newThread.Start();
- stp.Stop();
- stp2.Start();
- newThread2.Start();
- stp.Stop();
- newThread.Join();
- newThread2.Join();
- Console.WriteLine("Первый поток (highest) - " + stp.ElapsedTicks+ " тактов "+ "\n" +
- "Второй поток (above normal) - " + stp2.ElapsedTicks +" тактов ");
- Console.ReadKey();
- }
- }
- }
- public static string Str(double val, bool male,
- string seniorOne, string seniorTwo, string seniorFive,
- string juniorOne, string juniorTwo, string juniorFive)
- {
- bool minus = false;
- if (val < 0) { val = -val; minus = true; }
- int n = (int)val;
- int remainder = (int)((val - n + 0.005) * 100);
- StringBuilder r = new StringBuilder();
- if (0 == n) r.Append("0 ");
- if (n % 1000 != 0)
- r.Append(RusNumber.Str(n, male, seniorOne, seniorTwo, seniorFive));
- else
- r.Append(seniorFive);
- n /= 1000;
- r.Insert(0, RusNumber.Str(n, false, "тысяча", "тысячи", "тысяч"));
- n /= 1000;
- r.Insert(0, RusNumber.Str(n, true, "миллион", "миллиона", "миллионов"));
- n /= 1000;
- r.Insert(0, RusNumber.Str(n, true, "миллиард", "миллиарда", "миллиардов"));
- n /= 1000;
- r.Insert(0, RusNumber.Str(n, true, "триллион", "триллиона", "триллионов"));
- n /= 1000;
- r.Insert(0, RusNumber.Str(n, true, "триллиард", "триллиарда", "триллиардов"));
- if (minus) r.Insert(0, "минус ");
- r.Append(remainder.ToString("00 "));
- r.Append(RusNumber.Case(remainder, juniorOne, juniorTwo, juniorFive));
- //Делаем первую букву заглавной
- r[0] = char.ToUpper(r[0]);
- return r.ToString();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement