12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- using System;
- using System.Collections.Generic;
- using System.Diagnostics;
- using System.Diagnostics.Eventing.Reader;
- namespace RasradDll
- {
- public class Rasrad
- {
- /// <summary>
- /// Возращает обратное число
- /// </summary>
- /// <param name="n"></param>
- /// <returns></returns>
- public double GetReversRasrad(int n)
- {
- Trace.Listeners.Add(new TextWriterTraceListener("log.txt"));
- Trace.AutoFlush = true;
- List<int> listAnswer = GetList(n);
- Trace.WriteLine("Trace. Количество разрядов:" + listAnswer.Count);
- Debug.WriteLine("Debug. Количество разрядов:" + listAnswer.Count);
- double rasrad = (int)Math.Pow(10, listAnswer.Count - 1);
- double answer = 0;
- for (int i = 0; i < listAnswer.Count; i++)
- {
- answer += listAnswer[i] * rasrad;
- rasrad = rasrad / 10;
- }
- Trace.WriteLine("Trace. Ответ метода:" + answer);
- Debug.WriteLine("Debug. Ответ метода:" + answer);
- return answer;
- }
- /// <summary>
- /// Возвращение листа разрядов в обратном порядке
- /// </summary>
- /// <param name="n"></param>
- /// <returns></returns>
- public List<int> GetList(int n)
- {
- string str = n.ToString();
- int count = str.Length;
- int ost = 0;
- List<int> listRasrad = new List<int>();
- for (int i = 0; i < count; i++)
- {
- ost = n / 10;
- ost = ost * 10;
- listRasrad.Add(n - ost);
- n = n / 10;
- }
- return listRasrad;
- }
- }
- }
|