В качестве исходных данных для программы взять стандартно нормально распределенную выборку - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Мне нужно в качестве исходных данных для программы взять стандартно нормально распределенную выборку, около 500 значений. Как это сделать? Как их выбрать?

Решение задачи: «В качестве исходных данных для программы взять стандартно нормально распределенную выборку»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
 
#define N 20
#define PI 3.1415926535897932 
 
#define P (1 / sqrt(2 * PI))
 
int main(int argc, char* argv[])
{
    double X[N] = { 0 };
    for (int t = 0; t < N; t++)
    {
        bool found = false;
        double rv = (double)rand() / RAND_MAX;
        for (int j = t - 1; j >= 0 && !found; j--)
            found = (X[j] == rv) ? 1 : 0;
 
        if (found == false) X[t] = rv;
    }
 
    for (int i1 = 0; i1 < N; i1++)
        printf("X[%d] = %lf\n", i1, X[i1]);
 
    printf("\n");
 
    for (int i2 = 0; i2 < N; i2++)
    {
        X[i2] = P * exp(-pow(X[i2], 2) / 2);
        printf("X[%d] = %lf\n", i2, X[i2]);
    }
 
    _getch();
    
    return 0;
}

Объяснение кода листинга программы

Код представляет собой программу на языке C, которая выполняет следующие действия:

  1. Синтез нормального распределения: В первой части программы используется алгоритм обратного трассирования для генерации 20 случайных чисел, которые следуют нормальному распределению. Переменная found используется для проверки, было ли уже сгенерированное число rv добавлено в массив X. Если found остается равным false, это означает, что rv не было добавлено, и поэтому оно добавляется в массив X.
  2. Вывод массива X: Во второй части программы каждое значение в массиве X выводится на консоль.
  3. Вычисление значений P(X): В третьей части программы для каждого значения в массиве X вычисляется значение P(X), которое представляет собой вероятность того, что случайное число следует нормальному распределению. Значение P(X) выводится на консоль.
  4. Обработка ввода пользователя: В конце программы программа ожидает нажатия клавиши от пользователя, прежде чем завершиться.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.143 из 5
Похожие ответы