Оптимизация алгоритма - C# (237419)

Узнай цену своей работы

Формулировка задачи:

Добрый день. Написал код на C#, для вычисления, к примеру 2^(1 000 000 000). Ясно, что работа с BigInteger. Код работает, для числа, к примеру 2^(1 000 000) время вычисления пару минут. А для нужного числа 2 в миллиардной степени за ночь не вычислилось. Как оптимизировать этот код, чтобы быстрее шли вычисления?
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Numerics;
  6. using System.IO;
  7. namespace ConsoleApplication6
  8. {
  9. class Program
  10. {
  11. static void Main(string[] args)
  12. {
  13. BigInteger x = BigInteger.Pow(2, 1000000000);
  14.  
  15. string s = x.ToString();
  16. string temp_string = s;
  17. temp_string = temp_string.Replace("nen", "");
  18. BigInteger a = temp_string.Length;
  19. Console.WriteLine(x);
  20. Console.WriteLine("Количество цифр в числе" + a);
  21. StreamWriter sw = new StreamWriter("output.txt", true);
  22. sw.Write(x + "\r\n" + "Количество цифр в числе " + a);
  23. sw.Close();
  24. Console.ReadLine();
  25. }
  26. }
  27. }
З.Ы. на C++ не пинать. я понимаю, что на С++ вычисления быстрее, но я не знаю С++, поэтому хотелось бы реализовать вычисления на C#... Спасибо!

Решение задачи: «Оптимизация алгоритма»

textual
Листинг программы
  1. BigInteger x = BigInteger.Pow(2,1000000000);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы