C# 我不确定你的具体问题是什么。关于写一个能吸引最多答案的问题的技巧,请看。我想这不是家庭作业网站!!家庭作业问题很好,我鼓励学习者提问,我认为这个问题需要一点拼写检查,因为我想帮助他们,但不知道他们需要什么。我更新了我的帖子,抱歉,如果我不清楚。哇,非常感谢
C# 我不确定你的具体问题是什么。关于写一个能吸引最多答案的问题的技巧,请看。我想这不是家庭作业网站!!家庭作业问题很好,我鼓励学习者提问,我认为这个问题需要一点拼写检查,因为我想帮助他们,但不知道他们需要什么。我更新了我的帖子,抱歉,如果我不清楚。哇,非常感谢,c#,standards,mean,deviation,C#,Standards,Mean,Deviation,我不确定你的具体问题是什么。关于写一个能吸引最多答案的问题的技巧,请看。我想这不是家庭作业网站!!家庭作业问题很好,我鼓励学习者提问,我认为这个问题需要一点拼写检查,因为我想帮助他们,但不知道他们需要什么。我更新了我的帖子,抱歉,如果我不清楚。哇,非常感谢!这正是我需要的。现在我知道了,以备将来参考。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; us
我不确定你的具体问题是什么。关于写一个能吸引最多答案的问题的技巧,请看。我想这不是家庭作业网站!!家庭作业问题很好,我鼓励学习者提问,我认为这个问题需要一点拼写检查,因为我想帮助他们,但不知道他们需要什么。我更新了我的帖子,抱歉,如果我不清楚。哇,非常感谢!这正是我需要的。现在我知道了,以备将来参考。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace BsweeneyCsharp3_1_
{
public partial class Form1 : Form
{
List<double> values;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
values = new List<double>();
}
void ShowValues()
{
listBox1.Items.Clear();
for (int i = 0; i < values.Count; i++)
listBox1.Items.Add(values[i]);
}
private void button1_Click(object sender, EventArgs e)
{
double value = 0.00;
double sum = 0.00, sumSquares = 0.00, squareSums;
double stdDev = 0.00, mean = 0.00;
if (textBox1.Text.Length == 0)
{
MessageBox.Show("You must enter a value.", "Standard Deviation");
return;
}
try
{
value = double.Parse(textBox1.Text);
values.Add(value);
ShowValues();
textBox1.Text = "";
textBox1.Focus();
}
catch (FormatException)
{
MessageBox.Show("The value you entered is invalid.",
"");
}
for (int i = 0; i < values.Count; i++)
{
sum += values[i];
}
mean = sum / values.Count;
squareSums = sum * sum;
for (int i = 0; i < values.Count; i++)
sumSquares += (values[i] * values[i]);
double numerator = values.Count * sumSquares - squareSums;
double denominator = values.Count * (values.Count - 1);
stdDev = Math.Sqrt(numerator / denominator);
textBox2.Text = mean.ToString();
textBox3.Text = stdDev.ToString("F");
}
private void button2_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "TXT|*.txt";
double mean = 0.00, stdDev = 0.00, sum = 0.00;
double sumSquares = 0.00, squareSums = 0.00;
int counter = 0;
if (ofd.ShowDialog() == DialogResult.OK)
{
textBox4.Text = ofd.FileName;
}
string line;
System.IO.StreamReader file = new System.IO.StreamReader(textBox4.Text);
List<string> list = new List<string>();
while ((line = file.ReadLine()) != null)
{
listBox2.Items.Add(line);
var dbl = Convert.ToDouble(line);
sum += dbl;
counter++;
}
if (counter > 0)
{
mean = sum / counter;
squareSums += sum * sum;
}
if(counter > 0)
{
sumSquares += Math.Pow((sum - mean), 2);
double numerator = counter * sumSquares - squareSums;
double denominator = counter * (counter - 1);
stdDev = Math.Sqrt(numerator / denominator);
textBox2.Text = mean.ToString();
textBox3.Text = numerator.ToString();
}
}
}
}
if (counter > 0)//you don't need the same check 2x
{
mean = sum / counter;
for (int i = 0; i < listBox2.Items.Count; i++)
sumSquares += (Convert.ToDouble(listBox2.Items[i]) * Convert.ToDouble(listBox2.Items[i]));
squareSums += sum * sum;
//sumSquares += Math.Pow((sum - mean), 2);//You changed the formula again here
double numerator = counter * sumSquares - squareSums;
double denominator = counter * (counter - 1);
stdDev = Math.Sqrt(numerator / denominator);
textBox2.Text = mean.ToString();
//textBox3.Text = numerator.ToString();//You changed how you did things again
textBox3.Text = stdDev.ToString("F");
}