예제 #1
0
        static void Main(string[] args)
        {
            LongNumber a = new LongNumber();

            Console.WriteLine("В этой программке работают 1, 4, 6, 7, 10, 13 и 16 задачи.");
            Console.WriteLine("Введите число К для первой задачи.");
            int k = Convert.ToInt32(Console.ReadLine());

            a.EqualTo(Task1(k));
            Console.WriteLine("Сиё есть 1 задача.");
            a.WriteOut();
            Console.WriteLine("Введите два длинных числа для 4 задачи.");
            string     s  = Console.ReadLine();
            string     s1 = Console.ReadLine();
            LongNumber x1 = new LongNumber(s);
            LongNumber y1 = new LongNumber(s1);

            a.EqualTo(x1 * y1);
            Console.WriteLine("Сиё есть умножение.");
            a.WriteOut();
            a.EqualTo(x1 / y1);
            Console.WriteLine("Сиё есть деление.");
            a.WriteOut();
            Console.WriteLine("Введите число знаков для шестой задачи.");
            k = Convert.ToInt32(Console.ReadLine());
            a.EqualTo(Task6(k));
            a.WriteOut();
            Console.WriteLine("Введите число знаков для седьмой задачи.");
            k = Convert.ToInt32(Console.ReadLine());
            a.EqualTo(Task7(k));
            a.WriteOut();
            Console.WriteLine("Введите основание и степень для 10 задачи.");
            s  = Console.ReadLine();
            s1 = Console.ReadLine();
            x1 = new LongNumber(s);
            y1 = new LongNumber(s1);
            a.EqualTo(Task10(x1, y1));
            Console.WriteLine("Сиё есть 10 задача.");
            a.WriteOut();
            Console.WriteLine("Введите число Х для тринадцатой задачи.");
            s  = Console.ReadLine();
            x1 = new LongNumber(s);
            a.EqualTo(Task13(x1));
            Console.WriteLine("Сиё есть 13 задача.");
            a.WriteOut();
            Console.WriteLine("Сиё есть 16 задача.");
            Task16();
        }
예제 #2
0
        public static void Task16() // Задача номер ШЕСТНАДЦАТЬ!
        {
            // Массив со степенями.
            int[]      p = new int[] { 2, 3, 5, 7, 13, 17, 19, 31, 61, 89 };
            LongNumber q = new LongNumber("2");
            LongNumber b = new LongNumber("1");
            // Переменная для ответа.
            LongNumber a = new LongNumber();

            // Идём по степеням в массиве и считаем числа Мерсенна.
            for (int i = 0; i < 10; i++)
            {
                a.EqualTo(q);
                a.EqualTo(LongNumber.UpToPow(a, p[i]));
                a.EqualTo(a - b);
                a.WriteOut();
            }
        }