Определить параметры распределения (мат.ожидание, дисперсию, СКО, коэф.корреляции) - C#
Формулировка задачи:
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 Lab1 { public partial class Form1 : Form { int N; public Form1() { InitializeComponent(); } double MX(double[] a) { double sum = 0; for (int i = 0; i < N;i++) { sum += a[i]; } return sum/N; } double DX(double[] a) { double sum = 0; for (int i = 0; i < N;i++) { sum += Math.Pow(a[i]-MX(a),2); } sum=sum/(N*(N-1)); return Math.Sqrt(sum); } private void button1_Click(object sender, EventArgs e) { N = Convert.ToInt16(textBox1.Text); Random rand = new Random(); dataGridView1.ColumnCount = N; double[] a = new double[N]; for(int i=0;i<N;i++) { a[i] = rand.Next(0, 10); dataGridView1.Rows[0].Cells[i].Value = a[i]; } double M_X = MX(a); double D_X = DX(a); MessageBox.Show("MX=" + M_X.ToString() + " DX=" + D_X.ToString()); } private void textBox1_TextChanged(object sender, EventArgs e) { } private void Form1_Load(object sender, EventArgs e) { } } }
Решение задачи: «Определить параметры распределения (мат.ожидание, дисперсию, СКО, коэф.корреляции)»
textual
Листинг программы
double M(List<double> t) //генеральная средняя { return t.Average(); } double D(List<double> t) //исправленная дисперсия { double m = M(t); return t.Sum(a => (a - m) * (a - m)) / (t.Count - 1); } double G(List<double> t) //среднеквадратическое отклонение { return Math.Sqrt(D(t)); } private void button1_Click(object sender, EventArgs e) { N = Convert.ToInt16(textBox1.Text); if (int.TryParse(textBox1.Text, out N)) { Random rand = new Random(); dataGridView1.ColumnCount = N; List<double> sp = new List<double>(N); for (int i = 0; i < N; i++) { sp.Add(rand.Next(0, 10)); dataGridView1.Rows[0].Cells[i].Value = sp[i]; } double M_X = M(sp); double D_X = D(sp); double G_X = G(sp); //double Kxy = K(sp, sp); richTextBox1.AppendText(String.Format("{0}\r\n {1}\r\n {2}\r\n {3}\r\n", M_X, D_X, G_X, Kxy)); } else Console.WriteLine("Количество элементов должно быть целым числом"); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д