Перевод из четверичной в десятичную систему счисления - C#
Формулировка задачи:
Мне нужно сделать так:
123 = (1*4 в степени 2) + (2*4 в степени 1) + (3*4 в степени 0) = 27
Не знаю как сделать чтобы каждое число умножалось на число возведенное в степень, а затем прибавлялось к следующему числу возведенному в степень.
Листинг программы
- private void radioButton1_CheckedChanged(object sender, EventArgs e)
- {
- textBox5.Text = string.Empty;
- var i = textBox1.Text.Length.ToString();// считала количество знаков в строке
- int value = Convert.ToInt32(i);// конвертировала из строки в int
- int s = textBox1.Text[0]; // обращение к первому элементу
- int SistChisl = 4;// система счисления
- for (int power = 0; power<value; power++) // в степень возводит. Если вводишь 123, то вычисление степени будет 3 раза.
- {
- var c = Math.Pow(SistChisl, power);
- textBox5.Text = Convert.ToString(c); // итог выдает 16. Т.е. 4 в степени 2. По отладчику смотрела все 3 раза возведение в степень проходит правильно.
- }
- }
Решение задачи: «Перевод из четверичной в десятичную систему счисления»
textual
Листинг программы
- string str = textBox1.Text;
- int value = str.Length;
- double res = 0;
- int SistChisl = 4;// система счисления
- for (int i = 0; i < value; i++)
- {
- res += (int)Char.GetNumericValue(str[value - 1 - i]) * Math.Pow(SistChisl, i);
- }
- textBox5.Text = res.ToString();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д