Программа «Построение графиков функций»



Скачать 39.87 Kb.
Дата07.06.2016
Размер39.87 Kb.
Программа «Построение графиков функций»

Василенко Виталий Викторович (betal2008@mail.ru)

Ученик МОУ «Гимназия №85» г. Барнаула

Это программа адресована всем, кому необходимо построить график любой функции из курса "Математики 5-11 класс". Идея написание этой программы появилась, когда я начал готовиться к ЕГЭ по математике в 11 классе. Очень часто в ЕГЭ встречаются задания на исследование функции. И хотелось бы представлять, как выглядит эта функция перед тем, как её исследовать.



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

Задачи:

  • Разработать дружелюбный интерфейс,

  • Создать удобную навигацию

  • Продумать дизайн, цветовое, шрифтовое оформление.

  • Подобрать математический материал

  • Изучить особенности построение графиков функций (исследовать функции)

  • Изучить учебную литературу с целью подбора средств и методов реализации и данного проекта на языке Microsoft Visual Basic

Структура программы

Описание первой формы:

Программа состоит из трех форм. На первой форме располагаются элемент PictureBox в котором отображаются графики функций. Для работы программы необходимо вести коэффициенты для чего предусмотрены пять окон TextBox. Так же на форме располагаются семь кнопок предназначенных для построение графиков функций. С помощью этих кнопок можно построить графиков следующих функций: y=a*sin(k*x+n)+c, y=a*cos(k*x+n)+c, y=a*tg (k*x+n)+c, y=a*ctg(k*x+n)+c, y=a*x^n+b*x+c, y=k*x+n, y=k/(x+n)+c.



Программный код первой формы:

Описание переменных

Dim sngX, sngI As Single dblA, dblB, dblC, dblN, dblK As Double



Запуск формы «Справка»

Private Sub Cmd0_Click()

Form1.Show

End Sub


Процедура очистки окна построения графиков

Private Sub cmd9_Click()

picGraph.Cls

End Sub


Процедура присвоения значений коэффициентов переменным

Private Sub Command1_Click()

dblA = Val(Text1.Text)

dblB = Val(Text2.Text)

dblC = Val(Text3.Text)

dblN = Val(Text4.Text)

dblK = Val(Text5.Text)

Рисование координатной решётки

picGraph.Scale (-10, 10)-(10, -10)

For sngI = -10 To 10

picGraph.Line (sngI, 10)-(sngI, -10), &H808080

Next sngI

For sngI = -10 To 10

picGraph.Line (-10, sngI)-(10, sngI), &H808080

Next sngI

picGraph.Line (-10, 0)-(10, 0)

For sngI = -10 To 10

picGraph.PSet (sngI, 0)

picGraph.Print sngI

Next sngI

picGraph.Line (0, 10)-(0, -10)

For sngI = -10 To 10

picGraph.PSet (0, sngI)

picGraph.Print sngI

Next sngI

End Sub

Процедура рисования графика функции y=sinx

Private Sub cmd1_Click()

For sngX = -10 To 10 Step 0.0001

picGraph.PSet (sngX, dblA * Sin((dblK * sngX) + dblN) + dblC), &H80FF&

Next sngX

End Sub


Процедура рисования графика функции y=cosx

Private Sub cmd2_Click()

For sngX = -10 To 10 Step 0.0001

picGraph.PSet (sngX, dblA * Cos((dblK * sngX) + dblN) + dblC), &HFF0000

Next sngX

End Sub


Процедура рисования графика функции y=tgx

Private Sub cmd3_Click()

For sngX = -10 To 10 Step 0.0001

picGraph.PSet (sngX, dblA * Sin((dblK * sngX) + dblN) / Cos((dblK * sngX) + dblN) + dblC), &HFF&

Next sngX

End Sub


Процедура рисования графика функции y=ctgx

Private Sub cmd4_Click()

For sngX = -10 To ((-dblN - 0.1) / dblK) Step 0.0001

picGraph.PSet (sngX, dblA * Cos((dblK * sngX) + dblN) / Sin((dblK * sngX) + dblN) + dblC), &H8000&

Next sngX

For sngX = ((-dblN + 0.1) / dblK) To 10 Step 0.0001

picGraph.PSet (sngX, dblA * Cos((dblK * sngX) + dblN) / Sin((dblK * sngX) + dblN) + dblC), &H8000&

Next sngX

End Sub

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

Private Sub cmd5_Click()

For sngX = -10 To 10 Step 0.0001

picGraph.PSet (sngX, dblA * sngX ^ dblN + dblB * sngX + dblC), &HC0C000

Next sngX

End Sub


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

Private Sub cmd6_Click()

For sngX = -10 To 10 Step 0.0001

picGraph.PSet (sngX, dblK * sngX + dblN), &HC000C0

Next sngX

End Sub


Процедура рисования графика прямопропорциональной функции

Private Sub cmd7_Click()

For sngX = -10 To (-dblN - 0.1) Step 0.0001

picGraph.PSet (sngX, (dblK / (sngX + dblN)) + dblC), &H800080

Next sngX

For sngX = (-dblN + 0.1) To 10 Step 0.0001

picGraph.PSet (sngX, (dblK / (sngX + dblN)) + dblC), &H800080

Next sngX

End Sub

Запуск формы «Об авторе»

Private Sub Command2_Click()

Form2.Show

End Sub


Описание второй формы:

На второй форме располагается справочная информация, описание программы и указание на некоторые недоработки. К недоработкам данной программы можно отнести невозможность построение графиков функции при коэффициентах больше 10 и меньше -10. На самом деле при данных коэффициентах выполняется построение графиков функций, но изображение не попадает в область определения заданную нашими координатными осями. Данная форма не программируемая, и содержит только элементы Label, которые позволяют выводить текст на форму.



Описание третьей формы:

На третьей форме располагается фотография автора и его контактные данные.

Данный форма так же не программируемая. Изображение вставлялась с помощью

элемента image и его свойства Picture.



Перспективы:

  • Добавить графики других функций: логарифмической, показательной (ex).

  • К недоработкам данной программы можно отнести невозможность построение графиков функции при коэффициентах больше 10 и меньше -10. Поэтому, для эффективного использования данной программы необходимо организовать ввод области построения графиков пользователем.

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

Список используемой литературы

  1. «Информатика и информационные технологии». Учебник для 10 – 11 классов / Н. Д. Угринович. – 4-е изд. – М.: БИНОМ. Лаборатория знаний, 2007. – 511 с.: ил.

  2. Информатика и ИКТ. Практикум по программированию. 10 – 11 класс. Базовый уровень/Под ред. проф. Н. В. Макаровой. – СПб.: Питер, 2008. – 176с.

  3. Алгебра. Начало анализа 10-11 класс» А. Г. Мордкович – М.: Мнемозина, 2005.– 375 с


База данных защищена авторским правом ©refedu.ru 2016
обратиться к администрации

    Главная страница