Лучший отвечающий
C# and Windows Forms

Вопрос
-
Доброго времени суток!
Есть textbox1 и textbox2 на форме,должен в textbox1 вводить 4 разные цифры по очереди,каждый раз одну цифру,а в коде должен подсчитать средняя значения сумм этих цифр и это значение присвоить textbox2.25 ноября 2015 г. 16:52
Ответы
-
private void textbox1_TextChanged(object sender, TextChangedEventArgs e) { int x; double sum = 0; string s=textbox1.Text; int iCol = s.Length; for (int i = 0; i < iCol; i++) { int.TryParse(s[i].ToString(), out x); sum += x; } if (iCol == 0) textbox2.Text = ""; else textbox2.Text = (sum / iCol).ToString("0.00"); }
Ну как-то так выглядел бы код, если бы эту задачу решала я. Плюс настройка допустимых символов...
- Помечено в качестве ответа Maksim MarinovMicrosoft contingent staff, Moderator 8 декабря 2015 г. 8:15
25 ноября 2015 г. 20:59
Все ответы
-
Вы хотите, что бы за вас код написали?
VB.Net - WPF, UWP
25 ноября 2015 г. 17:00Отвечающий -
private void button1_Click(object sender, EventArgs e) { int sum = 0; List<int> list = new List<int>(); if (!(textBox17.Text == null)) { list.Add(int.Parse(textBox17.Text)); for (int i = 0; i < list.Count; i++) { sum += list[i]; } textBox17.Clear(); } textBox18.Text = (sum / 4).ToString(); }
25 ноября 2015 г. 17:25 -
вот код но не работает25 ноября 2015 г. 17:26
-
В Вашем коде значение textBox17 по нажатию на button1 заносится в лист. После чего по листу, в котором заведомо 1 элемент, Вы проходите циклом считая сумму. Эта сумма всегда будет равна значению textBox17. А результат в textBox18 всегда будет равен результату textBox17 разделенному на 4.
25 ноября 2015 г. 18:43 -
Я бы решил Вашу задачу так:
По какому-то событию (внешнему или событию TextBox-а) увеличивал бы сумму на значение textBox17, считая количество прибавлений.
После достижения 4 прибавлений сделал бы textBox17 неактивным и посчитал бы среднее разделив на количество прибавлений.
Данный код можно сделать универсальным считая среднее по достижении какого-либо события (нажатие на кнопку).
25 ноября 2015 г. 18:51 -
private void textbox1_TextChanged(object sender, TextChangedEventArgs e) { int x; double sum = 0; string s=textbox1.Text; int iCol = s.Length; for (int i = 0; i < iCol; i++) { int.TryParse(s[i].ToString(), out x); sum += x; } if (iCol == 0) textbox2.Text = ""; else textbox2.Text = (sum / iCol).ToString("0.00"); }
Ну как-то так выглядел бы код, если бы эту задачу решала я. Плюс настройка допустимых символов...
- Помечено в качестве ответа Maksim MarinovMicrosoft contingent staff, Moderator 8 декабря 2015 г. 8:15
25 ноября 2015 г. 20:59