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

мозг1101 мозг1101    1   23.07.2019 08:30    34

Ответы
gribovskayairi gribovskayairi  25.08.2020 12:57
Программа (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);
  writeln('[0.25; 0.5): ',
    arr.Where(x->(x>=0.25) and (x<0.5)).Count);
  writeln('[0.5; 0.75): ',
    arr.Where(x->(x>=0.5) and (x<0.75)).Count);
  writeln('[0.75; 1):   ',
    arr.Where(x->(x>=0.75) and (x<1)).Count);
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% всё меньше.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика