Основные этапы создания программы 5 Заключение 12 Список литературы 13 Введение
Вид материала | Документы |
- Механизмы реализации Программы 41 Заключение 44 Список источников и литературы 48 Введение, 583.7kb.
- 1. Целеполагание в процессе менеджмента Введение, 49.78kb.
- Тесты 12 Заключение 14 Список использованной литературы 15 Введение, 128.77kb.
- Реферата, 61.4kb.
- Cодержание Введение 2 Заключение 3 Список литературы, 53.54kb.
- Окончание финансового оздоровления и его план 58 Заключение 60 Список использованной, 1038.3kb.
- Методика расчета лизинговых платежей 30 заключение 37 список литературы 39 введение, 442.29kb.
- Концепция создания единой государственной информационной системы в сфере здравоохранения, 359.32kb.
- Концепция создания единой государственной информационной системы в сфере здравоохранения, 359.22kb.
- Одной из рекомендованных работ, 18.03kb.
Отдел образования и молодежной политики Ядринской районной администрациизования и молодежной политики.
VI районная научно-практическая конференция школьников
«Будущие лидеры отечества»
Направление: Естественно-технические науки
Секция: Программирование
Программирование в среде Visual Basic
Автор: Дмитриев Игорь Николаевич,
МОУ «Гимназия№1» города Ядрин
Руководитель: Трофимова Светлана Николаевна, учитель информатики
Ядрин 2008
Оглавление
Введение 4
Основные этапы создания программы 5
Заключение 12
Список литературы 13
Введение
Актуальность: программа для решения квадратных уравнений полезна, так как с помощью неё можно решать квадратные и линейные уравнения. Эта возможность может помочь при выполнении домашней работы по математике или для того, чтобы быстро решить уравнение.
Объект исследования – среда программирования Visual Basic.
Предмет исследования – изучение возможностей среды программирования Visual Basic.
Цель данной работы - создание программы, способной решать квадратные и линейные уравнения, на языке Visual Basic.
Для достижения данной цели были поставлены следующие задачи:
1. Изучить функции среды программирования Visual Basic.
2. Запрограммировать кнопку “Введите коэффициент a,b,c” на прием данных.
Для достижения этой задачи были поставлены следующие подзадачи:
- Изучение функции “InputBox”
- Изучение линейного алгоритма
3. Проанализировать и вывести информацию, полученную с кнопки “введите коэффициент a,b,c”.
Для достижения этой задачи были поставлены следующие подзадачи:
- изучение функции “Label”
- изучение линейного алгоритма
4.Наладить правильность вывода информации, полученной с кнопки “введите коэффициент a,b,c”
Для достижения этой задачи была поставлена следующая подзадача:
- углубленно изучить линейный алгоритм.
5.Запрограмировать кнопку “Решить” на решение квадратных и линейных уравнений.
Для достижения этой задачи были поставлены следующие подзадачи:
- Изучение функции “MsgBox”
- Повторение формул для вычисления корней квадратного уравнения
- Изучение разветвленного алгоритма.
6.Запрограмировать кнопку “очистить” для очистки меток(Label) программы
Для создания программы использовались следующие методы исследования:
- Анализ методической и учебной литературы по информатике.
- Применение полученных знаний на практике.
Автором создана программа, решающая квадратные и линейные уравнения. В ходе выполнения данной работы были изучены основные функции языка Visual Basic. Была изучена панель свойств разных объектов. Автор применил функции “MsgBox”, “Label”, “InputBox”, для программирования кнопок на выполнение конкретных задач. А результат работы – это полезная программа, которая решает все виды квадратных и линейных уравнений.
Основные этапы создания программы
Первый этап - это создание формы. Форма создается при помощи нажатия кнопки Insert UserForm
Далее на форме создаются кнопки и метки. Они создаются с помощью панели ToolBox. Для вызова панели ToolBox достаточно нажать одноименную кнопку.
Создаем кнопки при помощи CommandButton
Далее даем кнопкам имя
Настраиваем форму. Задаем цвет, даем имя, убираем вспомогательные точки. Все это делается при помощи панели Properties
Далее создаем девять меток при помощи панели ToolBox.
После данной процедуры начинается самая сложная часть данной работы это написание самой программы на языке Visual Basic.
Первым для кого была написана программа это кнопка “Введите коэффициент при a,b,c” потом кнопка “Решить”, ну а третьим соответственно кнопка “Очистить”. Сразу признаюсь самыми сложными в написании были первая и вторая ну а третья по легче.
Для написания программы к первой кнопки мне потребовались следующие функции: InputBox и линейный алгоритм.
InputBox – выполняет функцию ввода и приема информации. В моей программе он используется следующим образом:
Вот так выглядит функция InputBox в программе до запуска.
F = MsgBox("Пожалуйста вводите коэффиценты без знаков, а то возможна некорректная работа программы", 48 + 0, "Квадратные уравнения")
a = InputBox("Введите коэффицент a", "Решение уравнений", "1")
B = InputBox("Введите коэффицент b", "Решение уравнений", "1")
C = InputBox("Введите коэффицент c", "Решение уравнений", "1")
S = InputBox("Введите знак перед коэффицентом b ", "Решение уравнений", "+")
Z = InputBox("Введите знак перед коэффицентом c ", "Решение уравнений", "+")
А вот так после запуска.
Линейный алгоритм нужен для распознавания квадратного уравнения от линейного. Также для правильной записи уравнения. Вы спросите, для какой правильной записи. А я вам отвечу, что уравнение можно записать двумя способами: первый 1x2+1x+c=0 эта запись тоже считается правильной, но обычно так не пишут, а пишут вот как x2+x+1 это я и называю правильной записью уравнения.
Ниже находиться алгоритм распознавающий виды уравнения и правильно их выводящий в метке.
If a = 0 Or B = 0 Or C = 0 Then
If a = 0 Then
If B = 1 Then
If S = 45 Then
Label8.Caption = Chr(p) + "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Линейное уравнение"
Else
Label8.Caption = "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Линейное уравнение"
End If
Else
If S = 45 Then
Label8.Caption = Chr(p) + B + "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Линейное уравнение"
Else
Label8.Caption = B + "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Линейное уравнение"
End If
End If
Else
If B = 0 Then
If a = 1 Then
Label8.Caption = "x2" + Chr(kr9) + C + "=0"
Label1.Caption = "Линейное уравнение"
Else
Label8.Caption = a + "x2" + Chr(kr9) + C + "=0"
Label1.Caption = "Линейное уравнение"
End If
Else
If C = 0 Then
If a = 1 Then
If B = 1 Then
Label8.Caption = "x2" + Chr(p) + "x" + "=0"
Label1.Caption = "Линейное уравнение"
Else
Label8.Caption = "x2" + Chr(p) + B + "x" + "=0"
Label1.Caption = "Линейное уравнение"
End If
Else
If B = 1 Then
Label8.Caption = a + "x2" + Chr(p) + "x" + "=0"
Label1.Caption = "Линейное уравнение"
Else
Label8.Caption = a + "x2" + Chr(p) + B + "x" + "=0"
Label1.Caption = "Линейное уравнение"
End If
End If
End If
End If
End If
Else
If a = 1 Then
If B = 1 Then
Label8.Caption = "x2" + Chr(p) + "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Квадратное уравнение"
Else
Label8.Caption = "x2" + Chr(p) + B + "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Квадратное уравнение"
End If
Else
If B = 1 Then
Label8.Caption = a + "x2" + Chr(p) + "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Квадратное уравнение"
Else
Label8.Caption = a + "x2" + Chr(p) + B + "x" + Chr(kr9) + C + "=0"
Label1.Caption = "Квадратное уравнение"
End If
End If
End If
Второй этап это програмирование кнопки “Решить”. Для кнопки “Решить” потребовалась более простая программа, но гораздо больше функций. К ним относится MsgBox, Алгоритмы линейный и развернутый, метки, функция Sqrtb и другие.
Начинаю я программирование этой кнопки с вопроса “Ваше квадратное уравение стандартного вида? ”
А это ни что иное как функция MsgBox. Последующие мои действия - это создание алгоритма способного распознавать ответы функции MsgBox. Так как функция MsgBox при положительном ответе принимает значение равное шести, то я написал алгоритм который при а=6, где а это значение функции MsgBox, решает квадратное уравнение, а при ином линейное. В программе это выглядит примерно так:
V = MsgBox(" Ваше квадратное уравнение станндартного вида ", 32 + 4, "Квадратные уравнения")
If V = 6 Then
Label2.Caption = "Д"
Label4.Caption = "X1"
Label5.Caption = "X2"
Select Case x
Case "++"
D = B 2 - 4 * a * C
If D < 0 Then
Label3.Caption = D
Label6.Caption = "Нет корней"
Label7.Caption = ""
Label4.Caption = ""
Label5.Caption = ""
Else
Label3.Caption = D
Label6.Caption = (-B + Sqr(D)) / (2 * a)
Label7.Caption = (-B - Sqr(D)) / (2 * a)
End If
Case "+-"
D = B 2 + 4 * a * C
If D < 0 Then
Label3.Caption = D
Label6.Caption = "Нет корней"
Label7.Caption = ""
Label4.Caption = ""
Label5.Caption = ""
Else
Label3.Caption = D
Label6.Caption = ((-B + Sqr(D)) / (2 * a))
Label7.Caption = (-B - Sqr(D)) / (2 * a)
End If
Case "-+"
D = B 2 - 4 * a * C
If D < 0 Then
Label3.Caption = D
Label6.Caption = "Нет корней"
Label7.Caption = ""
Label4.Caption = ""
Label5.Caption = ""
Else
Label3.Caption = D
Label6.Caption = (B + Sqr(D)) / (2 * a)
Label7.Caption = (B - Sqr(D)) / (2 * a)
End If
Case Else
D = B 2 + 4 * a * C
If D < 0 Then
Label3.Caption = D
Label6.Caption = "Нет корней"
Label7.Caption = ""
Label4.Caption = ""
Label5.Caption = ""
Else
Label3.Caption = D
Label6.Caption = (B + Sqr(D)) / (2 * a)
Label7.Caption = (B - Sqr(D)) / (2 * a)
End If
End Select
Else
Label2.Caption = ""
Label4.Caption = "X"
Label5.Caption = ""
Label1.Caption = "Линейное уравнение"
If C = 0 Then
If E = Chr(45) Then
Label4.Caption = "X1"
Label5.Caption = "X2"
Label6.Caption = "0"
Label7.Caption = B
Else
Label4.Caption = "X1"
Label5.Caption = "X2"
Label6.Caption = "0"
Label7.Caption = -B
End If
Else
If B = 0 Then
If W = Chr(45) Then
Label6.Caption = Sqr(C / a)
Else
Label6.Caption = "Нет "
End If
Else
If a = 0 Then
Select Case x
Case "++"
Label6.Caption = -(C / B)
Label3.Caption = ""
Case "+-"
Label6.Caption = C / B
Label3.Caption = ""
Case "-+"
Label6.Caption = C / B
Label3.Caption = ""
Case Else
Label6.Caption = -(C / B)
Label3.Caption = ""
End Select
End If
End If
End If
End If
Теперь рассмотрим программу для решения квадратных и линейных уравнений.
Сначала посмотрим программу решения линейных уравнений. Я их делю на три группы:
- При а = 0 , где а коэффициент при x2
- При b = 0 , где b коэффициент при x
- При c = 0 , где с свободный член
Первый решается по формуле x = -c/b .
Второе решается по формуле x= Sqrt(-c) если – c меньше нуля, иначе нет решений.
Третье решается по формуле x(ax+-b) = 0 отсюда x = 0 или x = -b/a
Это вы можете проследить, если посмотрите алгоритм расположенный выше он выделен жирным цветом.
Далее происходит вывод информации. Она выводится в метках. У разных уравнений по-разному. У квадратных она выглядит так: (Рис. 2)
Рис. 1
Рис. 2
Но если дискриминант меньше нуля, то она выглядит так: (рис. 1)
В линейных уравнениях у каждой группы по-разному. Ниже показано, как выглядит вывод информации у разных групп линейных уравнений.
Первая группа.
Третья группа.
У второй группы он выглядит как и у первой.
Третий этап - это очистка уже ненужной информации; это делается при помощи кнопки “очистить”, программа для этой кнопки очень проста, она представлена ниже.
Label3.Caption = ""
Label6.Caption = ""
Label7.Caption = ""
Label8.Caption = ""
Label2.Caption = ""
Label5.Caption = ""
Label4.Caption = ""
Label1.Caption = ""
Также эта программа входит в состав программы приема информации. Это для того, чтобы избежать некорректной работы программы.
Заключение
Автором создана программа, решающая квадратные и линейные уравнения. В ходе выполнения данной работы были изучены основные функции языка Visual Basic. Была изучена панель свойств разных объектов. Автор применил функции “MsgBox”, “Label”, “InputBox”, для программирования кнопок на выполнение конкретных задач. А результат работы – это полезная программа, которая решает все виды квадратных и линейных уравнений.
Список литературы
- Практикум по Visual Basic, О. Л. Гусева, Финансы и статистика, 2007.
- Visual Basic 2005 для "чайников", Билл Семпф. – Вильямс, 2006.
- Введение в программирование на языке Visual Basic, Н. М. Якушева Финансы и статистика, 2006.
- Информатика и информационные технологии. Учебник для 9 класса. Базовый курс/ Н.Д. Угринович. – М.: БИНОМ. Лаборатория знаний, 2003.
- t.ru