Hi-Tech  ->  Программы  | Автор: | Добавлено: 2015-03-23

Наглядное представление построения графиков функций

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

Понятие функции является достаточно сложным для понимания учеников. При прохождении на уроках математики темы „Графики функций и их преобразование” у подростков возникает немало трудностей: учащиеся трудно усваивают для себя материал, затрудняются при ответе на уроке и при выполнении домашних заданий. В частности, дети путают, в каком направлении и на сколько единиц нужно сдвинуть график исходной функции, чтобы получить график более сложной функции.

Учитывая эти факты, в предыдущем году я написал ряд программ, показывающих преобразования графиков функции в движении. Однако у этих программ был ряд минусов: невозможность их запуска без среды Turbo Basic, в которой велась разработка, невозможность ввода дополнительных данных для построения (например, коэффициента при переменной x) – программы демонстрировали заранее описанные преобразования – и отсутствие интерфейса.

Познакомившись на уроках информатики с языком программирования Visual Basic, я задумался о продолжении разработки своего проекта. Осмыслив опыт предыдущей работы и оценив возможности новой для меня среды программирования, я решил создать программу, которая могла бы строить графики всех типов существующих функций и в которой были бы исправлены прежние недочеты. Для достижения этой цели я поставил для себя ряд задач:

- изучить функции, их свойства;

- изучить графики функций и виды их преобразований;

- изучить азы программирования в среде Visual Basic 6. 0;

- разработать проект программы;

- на основе изученного реализовать проект;

- протестировать полученную программу, сделать выводы.

Программа, которую я рассчитываю написать в ходе своей работы, может быть использована преподавателями для демонстрации детям и должна помочь как первым, так и вторым: учителям - в объяснении темы „Графики функций”, учащимся же - в ее освоении.

§1. Понятие функции.

Функция – зависимость переменной y от переменной x, причем каждому значению x соответствует единственное значение y. Значение y, соответствующее заданному значению x, называют значением функции. Переменную x называют независимой переменной или аргументом, а переменную y – зависимой переменной, поскольку значение функции (y) зависит от значения аргумента.

Если переменная y является функцией от переменной x, то следует запись y=f(x), что читается как «эф от икс» Буквой f обозначается функциональная зависимость между переменными x и y; f(x) есть значение функции, соответствующее значению аргумента. Так же говорят, что f(x) это ничто иное, как значение функции в точке x.

Для каждой функции существуют свои область определения область допустимых значений. Все значения, которые может принимать аргумент, образуют область определения функции. То есть это те значения независимой переменной, при которых выражение для переменной y имеет смысл.

Все значения, которые принимает функция f(x) (при x, принадлежащих области ее определения), образуют область значений функции.

Например, рассмотрим функцию y=x2. Аргумент в данном случае может принимать любые значения, следовательно, область определения функции y=x2 есть множество действительных чисел. Так как x2 при любых значениях x является числом положительным, то область допустимых значений, которые может принимать функция, составляют исключительно положительные числа (при аргументе же, равном нолю, функция также равна нолю).

Такие функции, область определения и область значений которых являются числовые множества, расположенные в области действительных чисел R, называются действительными.

§2. Способы задания функций

Чтобы задать функцию, нужно указать способ, с помощью которого для каждого значения аргумента можно найти соответствующее значение функции.

1. Наиболее употребительным является способ задания функции с помощью формулы y=f(x), где f(x) – некоторое выражение с переменной x. В данном случае функция задается формулой, и говорят, что функция задана аналитически.

Например, функция y=x+2 задана аналитически. Чтобы найти значение функции в любой точке x достаточно найти числовое значение выражения x+2 в выбранной точке.

2. На практике же часто используется табличный способ задания функции. При этом приводится таблица, указывающая значения функции для имеющихся в таблице значений аргумента. Существуют методы, позволяющие по такой таблице подбирать формулы, задающие функции.

Примером табличного задания функции может послужить таблица кубов. Поскольку в таблице приводятся числа и их кубы, то соответственно, зависимость y(x), а значит и формула, с помощью которой задается функция, записывается так: y=x3.

3. Задание функции возможно путем задания графика данной функции.

При этом на графике выбирают точки, определяют их координаты, находят зависимость между переменными x и y и выражают ее в виде формулы, задающей функцию.

§3. Графики функций

Множество все пар действительных чисел называется числовой плоскостью. Для числовой плоскости существует геометрическая модель – координатная плоскость. Она определяется двумя взаимно перпендикулярными координатными прямыми с общим началом O и одинаковым масштабом. Точка O называется началом координат. Горизонтальная прямая называется осью абсцисс или осью x, вертикальная – осью ординат или осью y.

Допустим, что функция задана аналитически формулой y=f(x). Если на координатной плоскости отметить все точки, абсциссы которых принадлежат области определения функции, а ординаты равны соответствующим значениям функции, то множество точек (x;y) есть график функции.

На практике для построения графика функции составляют таблицу значений функции при некоторых значениях аргумента, наносят на плоскость соответствующие точки и соединяют полученные точки линией. При этом предполагают, что график функции является плавной линией, а найденные точки достаточно точно показывают ход изменения функции.

Графики позволяют многое сказать и о свойствах изучаемых функций.

1º. Четность и нечетность функции.

Если график функции симметричен относительно оси ординат, то такая функция является четной (функция называется четной, если для любого x из области определения функции выполняется равенство y(-x)=y(x)).

Если график функции симметричен относительно начала координат, то такая функция является нечетной (нечетной называется функция, если для любого х из области определения функции выполняется равенство f(-x)=-f(x)).

Если не выполняется ни первое, ни второе условие, то функция не является ни четной, ни нечетной.

2º. Возрастание и убывание функции.

Если при увеличении значения аргумента значение функции уменьшается (чем правее будем брать на графике точки, тем ниже они будут располагаться), то функция является убывающей.

Если при увеличении значения аргумента значение функции возрастает (чем правее будем брать на графике точки, тем выше они будут располагаться), то функция является возрастающей.

Стоит отметить, что функция может быть возрастающей и убывающей одновременно. График наглядно показывает, на каких участках оси х функция убывает, а на каких наоборот возрастает.

Преобразования графиков функций

В математике существуют сложные функции, представляющие собой результат преобразования элементарных функций. Соответственно, чтобы получить график сложной функции необходимо выполнить преобразования графика исходной элементарной функции. Рассмотрим, какие возможны преобразования исходных графиков для получения новых.

Новая функция Преобразование исходного графика y=f(x) для получения графика новой функции

1. y=-f(x) Симметрия относительно оси Ох

2. y=f(-x) Симметрия относительно оси Оу

3. y=f(x)+b Параллельный перенос по вертикали на b вверх при b›0, вниз при b‹0

4. y=f(x+b) Параллельный перенос по горизонтали на b влево при b›0 и вправо при b‹0

5. y=q∙f(x), где q›0 Растяжение по вертикали в q раз при q›1, сжатие по вертикали в 1/q раз при q‹1

6. y=f(qx), где q›0 Сжатие по горизонтали в q раз при q›1, растяжение по горизонтали в 1/q раз при q‹1

7. y=f(x) Верхние участки остаются на месте, нижние преобразуются симметрично относительно оси Ox

8. y=f(x) Участок, расположенные левее Oy, удаляется, правый участок полностью сохраняется и преобразуются симметрично относительно оси Oy

Рассмотрим примеры преобразований по этим правилам.

Пример 1. Построить график функции y=(5/(2x+3))-4

Ход построения:

- строим график функции у=1/х

- чтобы получить график функции у=1/2х, сжимаем исходный график по горизонтали в 2 раза

- чтобы получить график функции у=1/(2х+3), нужно график функции у=1/2х перенести по горизонтали на три единицы влево

- чтобы получить график функции у=5/(2х+3), нужно график функции у=1/(2х+3) растянуть по вертикали в 5 раз

- чтобы построить график функции у=(5/(2х+3))-4, нужно график функции у=5/(2х+3) перенести по вертикали на 4 единицы вниз

Пример 2. Построить график функции у=2(5/(2x+3))-4+1

Ход построения:

- чтобы построить график функции y=(5/(2x+3))-4, нужно нижние участки графика у=(5/(2х+3))-4 преобразовать симметрично относительно Ох

- чтобы построить график функции у=2(5/(2x+3))-4, нужно растянуть график функции y=(5/(2x+3))-4 по вертикали в 2 раза

- чтобы построить график функции у=2(5/(2x+3))-4+1, нужно график функции y=(5/(2x+3))-4 перенести по вертикали на одну единицу вверх

§4. Виды функций

Рассмотрим основные существующие виды функций и их свойства.

1. Постоянная функция.

Постоянной называется функция, заданная формулой у=b, где b – некоторое число.

Графиком постоянной функции у=b является прямая, параллельная оси абсцисс и проходящая через точку (0;b) на оси ординат.

2. Прямая пропорциональность.

Прямой пропорциональностью называется функция, заданная формулой y=kx, где k≠0. Число k называется коэффициентом пропорциональности.

Перечислим свойства функции y=kx:

- область определения функции – множество всех действительных чисел.

- y=kx – нечетная функция (f(-x)=k(-x)=-kx=-f(x)).

- при k>0 функция возрастает, а при k<0 убывает на всей числовой прямой.

Графиком прямой пропорциональности y=kx является прямая, проходящая через начало координат.

3. Линейная функция.

Линейной функцией называется функция, которую можно задать формулой y=kx+b , где k и b – действительные числа. Если, в частности, k=0, то получаем постоянную функцию y=b; если b=0, то получаем прямую пропорциональность y=kx.

Перечислим свойства линейной функции y=kx+b при k≠0, b≠0.

- область определения функции – множество всех действительных чисел.

- функция y=kx+b ни четна, ни нечетна.

- при k>0 функция возрастает, а при k<0 убывает на всей числовой оси.

Графиком линейной функции y=kx+b является прямая.

4. Обратная пропорциональность.

Обратной пропорциональностью называют функцию, заданную формулой y=, где k≠0. Число k называют коэффициентом обратной пропорциональности.

Перечислим свойства функции y=.

- область применения – множество всех действительных чисел, кроме нуля.

- y= нечетная функция (поскольку f(-x)===-f(x)).

- если k>0 , то функция y= убывает на промежутке (0;+∞) и на промежутке (-∞;0). Если k<0 , то функция y= возрастает на промежутке (0;+∞) и на промежутке (-∞;0).

График обратной пропорциональности называют гиперболой.

5. Степенная функция с натуральным показателем.

Функция y=xn, где n – это натуральное число, называется степенной функцией с натуральным показателем. Рассмотрим свойства функций с четным и нечетным показателями.

При n=1, мы получаем функцию y=x, ее свойства рассмотрены во втором пункте.

Функция y=x2 (n=2). Данная функция обладает следующими свойствами:

- область определения функции – вся числовая прямая

- y=x2 – четная функция (f(-x)=(-x)2=x2=f(x))

- на промежутке [0;+∞) функция возрастает

- на промежутке (-∞;0] функция убывает

Графиком функции y=x2 называется параболой.

Если мы возьмем четное число n, большее двух, то свойства функции y=xn не изменятся, а график ее будет напоминать параболу y=x2 , однако чем больше будет число n, тем круче ветви графика идут вверх при x›1.

Для функции y=x3 (n=3) присущи следующие свойства:

- область определения функции – вся числовая прямая

- y=x3 – нечетная функция (f(-x)=(-x)3=-f(x))

- функция возрастает на всей числовой прямой

График такой функции называется кубической параболой.

Если взять нечетное число n, большее трех, то функция y=xn будет обладать теми же свойствами, что и функция y=x3. График такой функции будет напоминать кубическую параболу, но ветви графика тем круче идут вверх, вниз, чем больше n.

6. Степенная функция с целым отрицательным показателем.

Рассмотрим функцию y=x -n, где n – натуральное число. Рассмотрим свойства функции при нечетных и четных показателях.

При n=1 получаем функцию y=x-1=1/x, свойства которой перечислены в четвертом пункте.

Пусть n – нечетное число, большее единицы, n=3;5;7. В этом случае функция обладает в основном теми же свойствами, что и функция у=1/х. График функции напоминает график функции у=1/х.

Пусть n – четное число, например n=2. Перечислим свойства функции y=x -2 , то есть функции у=1/х2:

- функция определена при всех х≠0

- у=1/х2 - четная функция

- у=1/х2 убывает на участке (0;+∞) и возрастает на участке (-∞;0)

Теми же свойствами обладают любые степенные функции с отрицательным четным показателем n, большем двух.

7. Функция обладает следующими свойствами:

- область определения – луч [0;+∞)

- функция ни четна, ни нечетна

- функция возрастает на луче [0;+∞)

Если брать корень четной степени, большей двух, то функция будет обладать теми же свойствами, что и функция , а график ее будет напоминать график функции.

8. Функция обладает следующими свойствами:

- область определения функции – вся числовая прямая

- функция нечетна, так как

- функция возрастает на всей числовой прямой

Так как функция нечетна, то ее график будет симметричен относительно начала координат.

Если брать корень нечетной степени, большей трех, то функция будет обладать теми же свойствами, что и функция , а график ее будет напоминать график функции.

9. Степенная функция с положительным дробным показателем.

Рассмотрим функцию y=xr, где r – положительная несократимая дробь. Перечислим свойства этой функции:

- область определения – луч [0;+∞)

- функция ни четная, ни нечетная

- функция y=xr возрастает на промежутке [0;+∞)

10. Степенная функция с отрицательным дробным показателем.

Рассмотрим функцию y=x –r, где r – положительная несократимая дробь. Данная функция характеризуется следующими свойствами:

- область определения – промежуток (0;+∞)

- функция ни нечетная, ни четная

- функция y=x –r убывает на промежутке (0;+∞)

11. Показательная функция.

Показательная функция задается формулой y=ax, где a>0 и a≠1. Данная функция принимает любые положительные значения

Перечислим свойства функции y=ax при a>0:

- область определения функции – вся числовая прямая

- область значений функции – промежуток (0;+∞)

- функция не является ни четной, ни нечетной. Это следует из того, что a-x≠ax b и a-x≠-ax

- функция возрастает на всей числовой прямой

Свойства функции y=ax при 0

- область определения функции – вся числовая прямая

- область значений – (0;+∞)

- функция не является ни четной, ни нечетной

- функция убывает на всей числовой прямой

12. Логарифмическая функция.

Логарифмическая функция задается формулой y=logax, где a>0 и a≠1. Она является обратной к показательной функции y=ax и обладает следующими свойствами:

- область определения – промежуток (0;+∞)

- область значений – (-∞;+∞)

- функция ни четная, ни нечетная

- функция возрастает на промежутке (0;+∞) при a>1, убывает на промежутке (0;+∞) при 0

График логарифмической функции y=logax может быть получен из графика функции y=ax с помощью преобразования симметрии относительно прямой y=x.

§5. Знакомство со средой Visual Basic 6. 0

Microsoft Visual Basic – это среда быстрой разработки, в которой в качестве языка программирования используется Visual Basic. В основе его идеологии лежит технология визуального проектирования и методология объектно-ориентированного событийного программирования. Это означает, что при разработке программы на созданной программистом форме помещаются компоненты (или объекты), для которых затем прописываются события и процедуры обработки событий.

Разработка проекта начинается с создания главного элемента – формы. Форма – это объект, представляющий собой заготовку (основу) окна разрабатываемого приложения. Когда основа создана, на ней размещаются компоненты (находятся на панели ToolBox) – элементы интерфейса пользователя: кнопки, поля для ввода информации и т. д. По завершении этих операций начинается работа со свойствами объектов (расположены в окне Properties). Свойство – это характеристика, которая определяет внешний вид объекта. Это имя, цвет, размеры объектов, шрифты надписей и т. д.

Следующий этап создания приложения – это задание событий и процедур их обработки. Событие – это то, что происходит во время работы программы. В Visual Basic каждому событию присвоено имя. Например, щелчок мыши по изображению кнопки на экране – это событие Click, двойной щелчок - DblClick. Реакцией на событие должно быть какое-либо действие. В Visual Basic реакция на событие реализуется как процедура обработки события. Таким образом, для того чтобы программа выполняла некоторую работу в ответ на действия пользователя, программист должен написать процедуру обработки соответствующего события. Следует обратить внимание на то, что значительную часть обработки событий берет на себя компонент. Поэтому разрабатывать процедуру обработки события следует только в том случае, если реакция на событие отличается от стандартной или не определена.

Когда составление кода завершено, программу следует протестировать – запустить ее при помощи команды Run. При наличии в коде ошибки, редактор кода укажет на строку, содержащую ее. Если программа полностью исправна, то ее следует скомпилировать в исполнительный файл, работающий независимо от среды Visual Basic.

Рассмотрим те компоненты, которые я буду использовать в процессе написания программы:

- TextBox – поле для введения пользователем данных с клавиатуры. Занесенное в него значение будет присваиваться в заданную переменную (ячейку памяти, для которой определены имя и тип): название переменной = название объекта. Text

- Label – компонент, предназначенный для отображения текстовой информация (свойство Caption).

- CommandButton – командная кнопка. Кнопки будут использованы для выполнения построения графиков и перехода между окнами.

- PictureBox – компонент, предназначенный для рисования и отображения иллюстраций. В нем и будет идти рисование графиков функций.

Построение графика будет происходить по точкам. При этом лучше всего использовать оператор цикла „FORNEXT” (для всех точек расчеты будут происходить по одной и той же формуле, т. е. действие будет повторяться – алгоритм циклический):

FOR X = начальное значение TO конечное значение STEP шаг изменения

Y = F(X)

Имя объекта PictureBox. Pset (X,Y)

Выше упоминалось об использовании переменных. Чтобы задать и описать переменную используют оператор DIM:

DIM название переменной AS тип переменной

Также при написании программы будет использовано ветвление, т. е. будет использован оператор условия. Если поставленное условие выполняется, то программа будет выполняться по одной ветви (именуется положительной), если же нет, то программа будет выполняться по другой, отрицательной ветви.

IF условие THEN

Первый блок – положительная ветвь

Второй блок – отрицательная ветвь

§6. Разработка проекта

Перейдем непосредственно к практической части – разработке проекта.

Первый этап – создание форм. Их восемь. 7 из них имеют одинаковые размеры (одинаковые свойства Width и Height), каждая из них предназначена для построения графиков определенного вида функций (имена и заголовки форм соответствуют названиям функций). При запуске программы эти окна не видны (свойство Visible = False). Оставшаяся форма (Begin) отличается размерами от остальных и видна при запуске (свойство Visible = True).

Второй этап – размещение объектов на формах. На форме Begin располагаем 7 кнопок, название которых соответствуют названиям видов функций (свойство Caption). На остальных формах размещаем 1 PictureBox, 2 командные кнопки (Строить и Вернуться), объекты Label и TextBox (их количество зависит от количества входных данных).

Третий этап – эстетика: придаем созданным объектам красивый вид (изменяем цвета, шрифты, задаем тексты, выводимые в объектах Label, и т. д. ).

Четвертый этап - написание программного кода (задание событий и процедур их обработки). Для формы Begin при нажатии любой из кнопок соответствующая данному виду функций форма становится видимой (значение свойства Visible меняется с False на True).

Для остальных форм при нажатии кнопки Строить стирается предыдущее изображение на экране, для PictureBox задается масштаб (свойство Scale), рисуются оси координат (оператор Line), с использованием циклов „FORNEXT” наносится штриховка, значения отрезков координатных прямых и строится график (в соответствии с областью определения функции), при этом, в зависимости от вводных данных, могут меняться масштаб и расположение осей координат (достигается за счет ветвления).

При нажатии кнопки Вернуться свойство Visible данной формы меняется на False.

Пятый этап - тестирование программы. В процессе тестирования программы я использовал при вводе множество чисел для проверки всех заданных условий, сопоставляя при этом результаты на экране с приведенным в §4 анализом свойств функций, их поведения в зависимости от аргумента. Заблаговременное изучение свойств функций помогло понять, где именно допущены ошибки или недочеты, и быстро найти их среди очень объемного программного кода. На данный момент все ошибки исправлены, программа выполняет построения всех графиков функций, которые подчиняются заложенным условиям.

Шестой этап – сохранение форм, самого проекта (программу можно будет редактировать и совершенствовать) и компиляция.

Заключение.

Итак, подведем итоги проделанной работы. В ходе реализации проекта я обобщил и закрепил свои знания по математике и информатике. Осваивая азы языка Visual Basic, я открыл для себя более высокий уровень в области программирования. Используя возможности среды программирования Microsoft Visual Basic 6. 0, я смог преодолеть недостатки предыдущих работ – теперь программа обладает графическим интерфейсом, а пользователь может сам вводить данные для построения графика. В результате компиляции было получено приложение (исполнительный. exe-файл), для запуска которого не требуется среда Visual Basic’а. Интеграция математики и информатики облегчили написание программы (например, знание области определения степенной функции с отрицательным показателем - x≠0 – помогло избежать ошибки деления на ноль при описании цикла построения графика этой функции), облегчили поиск и исправление ошибок, возникших при ее тестировании.

Поставленные задачи и цель проекта достигнуты. Полученная программа наглядно представляет построение графиков функций, и есть возможность ее применения как наглядного пособия в процессе обучения учеников. Ее использование способствует упрощению изучения темы „Графики функций”, лучшему усвоению материала учащимися и повышению, как следствие, их успеваемости по математике.

Работа над проектом помогла мне подняться еще на одну ступень в области программирования – в той сфере деятельности, в которой я в будущем хотел бы работать. Достижение успешного окончания написания программы способствовало повышению моей самооценки, придало уверенности в своих силах и дало мне новый толчок. Я продолжу работу в этой области, а именно в направлении темы „Наглядного представления преобразований графиков функции”.

Комментарии


Войти или Зарегистрироваться (чтобы оставлять отзывы)