private void button1_Click(object sender, EventArgs e)
        {
            long a, n;

            try {
                a = Convert.ToInt64(textBox1.Text);
                n = Convert.ToInt64(textBox2.Text);
            } catch {
                return;
            }

            textBox3.Text = string.Empty;

            string binary_n = string.Empty;

            while (n > 0)
            {
                binary_n += n % 2;        //Інвертований бінарний запис.
                n        /= 2;
            }

            long Rez;

            if (binary_n[0] == '1')
            {
                Rez = a;
            }
            else
            {
                Rez = 1;
            }


            textBox3.Text = Rez.ToString();

            for (int i = 1; i < binary_n.Length; i++)
            {
                a = a * a;
                if (binary_n[i] == '1')
                {
                    textBox3.Text += (" * " + a);
                    Rez           *= a;
                }
            }

            textBox3.Text += " = " + Rez;
        }
Ejemplo n.º 2
0
        // Рассчёт

        private void button1_Click(object sender, EventArgs e)
        {
            textBox3.Clear();
            int Rez,
                n;

            // Проверка конвертации
            if (Int32.TryParse(textBox1.Text, out n))
            {
                // Вызов функции из библиотеки
                Rez = Lib_9.Class.Summ(n, textBox3);
                // Вывод суммы
                textBox2.Text = Rez.ToString();
            }
            // При неудачной конвертации выводим подсказку и очищаем поле
            else
            {
                textBox1.Clear();
                MessageBox.Show("Ошибка конвертации!");
            }
        }