ΠΠΌΠΏΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½ΡΠ»Π΅Π²ΠΎΠΉ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌΡ Π·Π°ΠΊΠΎΠ½Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ. String Result1= «ΠΡΠ»Π΅Π²Π°Ρ Π³ΠΈΠΏΠΎΡΠ΅Π·Π° ΠΎΠ± ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π½Π°ΡΠΈΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ±ΠΎΡΠΊΠ°ΠΌΠΈ»; Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎΠ± ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΠΈ Π΄Π²ΡΡ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ. Double f1 = 1 — 1 / Math. Sqrt (2 * Math. PI) / sr * Math. Exp (-Math. Pow ((xmin + dx * (i + 1) — mid), 2) / 2 / sr/sr… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠΌΠΏΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠΌΠΏΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ
1. ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ
Π‘Π½Π°ΡΠ°Π»Π° Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ 2 Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΈΠ· N ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠ°ΡΠ΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΠ±ΠΎΡΠΊΠΈ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π²ΡΠ±ΠΎΡΠΎΠΊ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ Π₯2. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π₯ΠΊΡ. ΠΠ· ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΄Π΅Π»Π°Π΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄ ΠΎ ΠΏΡΠΈΠ½ΡΡΠΈΠΈ ΠΈ ΠΎΡΠ²Π΅ΡΠΆΠ΅Π½ΠΈΠΈ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎΠ± ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΠΈ Π΄Π²ΡΡ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ.
ΠΠ°ΡΠ΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΡΡΠ΅Π΄Π½Π΅ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅. ΠΠΎ Π½ΠΈΠΌ Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΡ ΡΠΈΡΠ»Π° Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ². ΠΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΡΠΈΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠ΅ΠΉ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ Π₯2 ΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π₯ΠΊΡ. ΠΠ· ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΄Π΅Π»Π°Π΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄ ΠΎ ΠΏΡΠΈΠ½ΡΡΠΈΠΈ ΠΈ ΠΎΡΠ²Π΅ΡΠΆΠ΅Π½ΠΈΠΈ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌΡ Π·Π°ΠΊΠΎΠ½Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ.
Π’Π°Π±Π»ΠΈΡΠ° ΠΈΠΌΠ΅Π½
N | ΠΠ±ΡΠ΅ΠΌ Π²ΡΠ±ΠΎΡΠΎΠΊ | |
M | ΠΠ°Ρ. ΠΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ | |
S | ΠΠ΅Π½Π΅ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΡΠ΅Π΄Π½Π΅ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ | |
Y1 | ΠΡΠ±ΠΎΡΠΊΠ° № 1 | |
Y2 | ΠΡΠ±ΠΎΡΠΊΠ° № 2 | |
k | Π§ΠΈΡΠ»ΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ² | |
xmin | ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ±ΠΎΡΠΊΠΈ | |
xmax | ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ±ΠΎΡΠΊΠΈ | |
dx | ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° | |
cnt1 | Π§ΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π²ΡΠ±ΠΎΡΠΊΠΈ | |
cnt2 | Π§ΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅ Π²ΡΠΎΡΠΎΠΉ Π²ΡΠ±ΠΎΡΠΊΠΈ | |
xmed | Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° | |
xi1 | ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ Π₯2 | |
xikr | ΠΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π₯2 | |
Result1 | Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎΠ± ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΠΈ Π΄Π²ΡΡ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ | |
mid | ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π²ΡΠ±ΠΎΡΠΊΠΈ | |
sr | ΠΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ΅ ΡΡΠ΅Π΄Π½Π΅ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ | |
P | ΠΠ΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΡ ΡΠΈΡΠ»Π° Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ² | |
xi2 | ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ Π₯2 | |
xi2kr | ΠΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π₯2 | |
Result2 | Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½ΡΠ»Π΅Π²ΠΎΠΉ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌΡ Π·Π°ΠΊΠΎΠ½Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ. | |
SX | ΠΠ°ΡΡΡΠ°Π± Π³ΡΠ°ΡΠΈΠΊΠ° ΠΏΠΎ Π₯ | |
SY | ΠΠ°ΡΡΡΠ°Π± Π³ΡΠ°ΡΠΈΠΊΠ° ΠΏΠΎ Y | |
2. Π’Π΅ΠΊΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
using System;
using System. Collections. Generic;
using System. ComponentModel;
using System. Data;
using System. Drawing;
using System. Text;
using System. Windows. Forms;
namespace oed4
{
public partial class Form1: Form
{
public Form1 ()
{
InitializeComponent ();
}
private double Laplas (double X)
{
double F = 0;
double dt=Math. Abs (X/1000);
for (int i = 0; i < 1000; i++)
F += Math. Exp (-i * dt * i * dt / 2) * dt;
F /= Math. Sqrt (2 * Math. PI)*Math. Sign (X);
return F;
}
private void button1_Click (object sender, EventArgs e)
{
// ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
int N = Convert. ToInt32 (textBox1. Text); // ΠΎΠ±ΡΠ΅ΠΌ Π²ΡΠ±ΠΎΡΠΊΠΈ
double M = Convert. ToDouble (textBox2. Text); // ΠΌΠ°Ρ. ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅
double S = Convert. ToDouble (textBox3. Text); // ΡΡΠ΅Π΄Π½Π΅ΠΊΠ². ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅
Random R = new Random (); // Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π»
List Y1 = new List (N); // Π²ΡΠ±ΠΎΡΠΊΠ°
// Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π²ΡΠ±ΠΎΡΠΊΠΈ № 1
for (int i = 0; i < N; i++)
{
double sum = 0; // ΡΡΠΌΠΌΠ° 12 ΡΠΈΡΠ΅Π»
for (int ii = 0; ii < 12; ii++)
sum += (double) R. NextDouble (); // Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°
Y1. Add ((M + S * (sum — 6))); // ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ»Π° Π² ΠΌΠ°ΡΡΠΈΠ²
}
// Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π²ΡΠ±ΠΎΡΠΊΠΈ № 2 — Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ
List Y2 = new List (N);
for (int i = 0; i < N; i++)
{
double sum = 0;
for (int ii = 0; ii < 12; ii++)
sum += (double) R. NextDouble ();
Y2. Add ((M + S * (sum — 6)));
}
int k = (int) (1 + 3.32 * Math. Log10 (N)); // ΡΠΈΡΠ»ΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ²
// ΠΏΠΎΠΈΡΠΊ ΠΏΡΠ΅Π΄Π΅Π»ΠΎΠ²
double xmin = Y1 [0], xmax = Y1 [0];
for (int i = 0; i < N; i++)
{
if (Y1 [i] < xmin) xmin = Y1 [i];
if (Y1 [i] > xmax) xmax = Y1 [i];
if (Y2 [i] < xmin) xmin = Y2 [i];
if (Y2 [i] > xmax) xmax = Y2 [i];
}
// Π°Π½Π°Π»ΠΈΠ· Π²ΡΠ±ΠΎΡΠΎΠΊ
double dx = (xmax — xmin) / k; // ΡΠ°Π³
List cnt1 = new List (k); // ΡΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· 1 Π²ΡΠ±ΠΎΡΠΊΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅
List cnt2 = new List (k); // ΡΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ· 2 Π²ΡΠ±ΠΎΡΠΊΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅
List xmed = new List (k); // ΡΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
double xi1 = 0; // Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ ΡΠΎΠ³Π»Π°ΡΠΈΡ
for (int i = 0; i < k; i++)
{
double sum = 0; // ΡΡΠΌΠΌΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°
cnt1. Add (0);
cnt2. Add (0);
for (int j = 0; j < N; j++) // Π°Π½Π°Π»ΠΈΠ· ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°
{
if ((Y1 [j] > xmin + i * dx) && (Y1 [j] <= xmin + (i + 1) * dx))
{
cnt1 [i]++;
sum += Y1 [j];
}
if ((Y2 [j] > xmin + i * dx) && (Y2 [j] <= xmin + (i + 1) * dx))
{
cnt2 [i]++;
sum += Y2 [j];
}
}
if (cnt1 [i] + cnt2 [i] == 0)
xmed. Add (0);
else xmed. Add (sum / (cnt1 [i] + cnt2 [i])); // Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΡΠΌΠΌΡ
if (cnt2 [i]≠ 0)
xi1 += (cnt1 [i] - cnt2 [i]) * (cnt1 [i] - cnt2 [i]) / (double) cnt2 [i]; // Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΡ
}
// Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΡΠΈΡΠ΅ΡΠΈΡ
const double u = 1.645;
double v = k — 1;
double xikr = v * (1 — 2 / v / 9 + u * Math. Sqrt (2 / v / 9));
string Result1= «ΠΡΠ»Π΅Π²Π°Ρ Π³ΠΈΠΏΠΎΡΠ΅Π·Π° ΠΎΠ± ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π½Π°ΡΠΈΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ±ΠΎΡΠΊΠ°ΠΌΠΈ»;
if (xi1
else Result1+= «ΠΡΠ²Π΅ΡΠ³Π°Π΅ΡΡΡ»;
// Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ. ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ
double mid = 0;
for (int i = 0; i < k; i++)
mid += xmed[i] * (cnt1 [i] + cnt2 [i]);
mid /= N*2;
// Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ° ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ
double sr = 0;
for (int i = 0; i < k; i++)
sr += (xmed[i] - mid) * (xmed[i] - mid) * (cnt1 [i] + cnt2 [i]);
sr = Math. Sqrt (sr / (N*2 — 1) + (xmax — xmin) * (xmax — xmin) / 12);
List P = new List (k); // Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΡ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π² ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»
for (int i = 0; i < k; i++)
{
double a = xmin + dx * i;
double b = xmin + dx * (i+1);
double p = Laplas ((b — M) / S) — Laplas ((a — M) / S);
P. Add (p);
}
double xi2 = 0;
for (int i = 0; i < k — 1; i++)
xi2 += Math. Pow ((cnt1 [i] + cnt2 [i] - 2 * N * P[i]), 2) / (2 * N * P[i]);
double v2 = k — 3;
double xi2kr = v2 * (1 — 2 / v2 / 9 + u * Math. Sqrt (2 / v2 / 9));
string Result2 = «ΠΠΈΠΏΠΎΡΠ΅Π·Π° ΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌ Π·Π°ΠΊΠΎΠ½Π΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ»;
if (xi2 < xi2kr) Result2 += «ΠΡΠΈΠ½ΠΈΠΌΠ°Π΅ΡΡΡ»;
else Result2 += «ΠΡΠ²Π΅ΡΠ³Π°Π΅ΡΡΡ»;
// Π²ΡΠ²ΠΎΠ΄ Π³ΡΠ°ΡΠΈΠΊΠ°
float SX = (float) pictureBox1. Width / k;
float SY = (float) pictureBox1. Height / N;
Bitmap bmp = new Bitmap (pictureBox1. Width, pictureBox1. Height);
Graphics gr = Graphics. FromImage (bmp);
gr. Clear (Color. White);
// ΠΎΡΠΈ
for (int i = 1; i < k; i++)
{
gr. DrawLine (Pens. LightGray, i * SX, 0, i * SX, pictureBox1. Height);
gr. DrawString (Convert. ToString (xmin+ i * dx), Font, Brushes. Black,
i * SX, 0);
}
for (int i = 1; i < 4; i++)
{
gr. DrawLine (Pens. LightGray, 0, i * SY * N / 4,
pictureBox1. Width, i * SY * N / 4);
gr. DrawString (Convert. ToString (N — i * N / 4), Font,
Brushes. Black, 0, i * SY * N / 4);
}
// Π³ΡΠ°ΡΠΈΠΊ
for (int i = 0; i < k; i++)
{
double f = 1 — 1 / Math. Sqrt (2 * Math. PI) / sr * Math. Exp (-Math. Pow ((xmin + dx * i — mid), 2) / 2 / sr /sr);
double f1 = 1 — 1 / Math. Sqrt (2 * Math. PI) / sr * Math. Exp (-Math. Pow ((xmin + dx * (i + 1) — mid), 2) / 2 / sr/sr);
gr. DrawLine (Pens. Red, i * SX, (float) f * N * SY, (i + 1) * SX, (float) f1 * N * SY);
gr. DrawLine (Pens. Black, i * SX, (float) (N — cnt1 [i] - cnt2 [i]) * SY,
(i + 1) * SX, (float) (N — cnt1 [i] - cnt2 [i]) * SY);
}
for (int i = 0; i < k-1; i++)
gr. DrawLine (Pens. Green, (i+0.5f) * SX, (float) (1 — P[i]) * N * SY, (i + 1.5f) * SX, (float) (1 — P [i+1]) * N * SY);
pictureBox1. Image = bmp;
MessageBox. Show («ΠΡΠΈΡΠ΅ΡΠΈΠΉ ΡΠΎΠ³Π»Π°ΡΠΈΡ:» + xi1. ToString () + «n» +
«ΠΊΡΠΈΡ. Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅» + xikr. ToString () + «n"+
Result1+"n"+
«ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅» + mid. ToString () +
«ΡΡΠ΅Π΄Π½Π΅ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅» + sr. ToString () +
«ΠΡΠΈΡΠ΅ΡΠΈΠΉ ΡΠΎΠ³Π»Π°ΡΠΈΡ:» + xi2. ToString () + «n» +
«ΠΊΡΠΈΡ. Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅» + xi2kr. ToString () + «n"+
Result2+"n");
}
}
}
3. Π¨Π°Π±Π»ΠΎΠ½ Π²Π²ΠΎΠ΄Π° Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ
4. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΡ ΠΏΠΈΡΡΠΎΠ½Π³
ΠΡΠ²ΠΎΠ΄Ρ
ΠΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘#, Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΠ°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½, ΠΈΠΌΠ΅ΡΡΠΈΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ Π·Π°ΠΊΠΎΠ½ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π΅Π΅ ΡΠ΄Π°Π»ΠΎΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎΠ± ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΠΈ Π΄Π²ΡΡ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΡΠΈΡΠ΅ΡΠΈΠΉΠΠΈΡΡΠΎΠ½Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π³ΠΈΠΏΠΎΡΠ΅Π·Ρ ΠΎ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ.