Френсис Хилл

Рис. 2.24. График рассеяния роста человека и его веса Для наглядного представления данных используют график рассеяния. Для каждого индивидуума данные рисуются в виде точки с координатами (рост, вес), следовательно, нам понадобится только инструмент dгawDot(). Рисунок 2.24 дает пример такого графика. Он наводит на мысль, что рост и вес человека приблизительно линейно зависят один от другого, хотя некоторые из людей (например, А) имеют индивидуальные особенности и весят мало, хотя достаточно высоки.

1 Понятие «день программирования» означает несколько двухчасовых «сеансов» с массой времени для размышлений (и отдыха) между этими сеансами. Кроме того, подразумевается достаточно искусный программист (с опытом не менее двух семестров программирования), хорошо знакомый с особенностями используемого языка и платформы программирования. В этот «день» не вхо-дятте ужасные часы, столь хорошо известные нам, когда мы сталкиваемся с какой-нибудь скрытой ошибкой, которая выставляет перед нами кирпичную стену разочарований до тех пор, пока эта ошибка не будет выловлена и раздавлена.

2.6. Тематические задания В данном случае мы используем график рассеяния для визуальной оценки качества генератора случайных чисел. Каждый раз при вызове функции random(N) она возвращает величину из промежутка О ... N- 1, которая претендует на то, что она выбрана случайно и не зависит от величин, возвращенных ранее. Однако являются ли эти последовательные величины действительно независимыми?

Одна из простейших проверочных программ строит график рассеяния, исходя из пары последовательных величин, возвращаемых функцией random(N). Эта программа вызывает random(N) два раза подряд и строит вторую величину как функцию первой:

for(int 1 - 0: I < num: i++) drawDot(random(N). random(N)): В «сыром» (raw) OpenGL мы можем поместить цикл for между командами glBegin и glEnd:

glBegin(GL_POINTS):

for(int 1=0; i < num: i++): // do it num times // выполняем цикл num раз

glVertex2i(random N. random(N)):


⇐ Предыдущая| |Следующая ⇒