Напишите программу, которая строит последовательность из N случайных чисел ** отрезке от...

0 голосов
452 просмотров

Напишите программу, которая строит последовательность из N случайных чисел на отрезке от 0 до 1 и определяет, сколько из них попадает в полуинтервалы [0;
0,25), [0,25;0,5), [0,5; 0,75) и [0,75;1). Сравните результаты, полученные при N=10,100, 1000, 10000.


Информатика (84 баллов) | 452 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Программа (PascalABC.NET, 3.1.1204):

begin
  var arr := ArrRandomReal(ReadInteger('N ='), 0, 1);
  writeln('[0; 0.25):   ',
    arr.Where(x->(x>=0) and (x<0.25)).Count);<br>  writeln('[0.25; 0.5): ',
    arr.Where(x->(x>=0.25) and (x<0.5)).Count);<br>  writeln('[0.5; 0.75): ',
    arr.Where(x->(x>=0.5) and (x<0.75)).Count);<br>  writeln('[0.75; 1):   ',
    arr.Where(x->(x>=0.75) and (x<1)).Count);<br>end.

Можете её запускать при разных N. У меня получилось так (четыре числа - число попавших в интервал):
N = 10.
3, 1, 2, 4
N = 100. 
21, 29, 21, 29
N = 1000.
272, 240, 241, 247
N = 10000.
2588, 2383, 2464, 2565

Результаты могут отличаться (массив из случайных чисел генерируется, всё-таки), но тенденция должна быть такой: в каждый интервал должны попадать примерно четверть всех точек, притом с увеличением N отклонение доли попавших в тот или иной полуинтервал должно отклоняться от 25% всё меньше.

(148k баллов)