Перевод из четверичной в десятичную систему счисления - 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();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д