Скачать 154.31 Kb.
|
Государственное бюджетное образовательное учреждение Образовательный центр «Протон» Проектная работа Математический помощник 2 Выполнили: Учащиеся 11 «Ж» класса Корниенко Дмитрий Владимирович Фролов Павел Вадимович Беляева Ирина Владимировна Руководители: Беляева Марина Юрьевна (учитель информатики) Крапивина Светлана Владимировна (учитель математики) г. Москва 2017 г. Содержание Содержание………………………………………………………………..2 Введение……………………………………………………………………3 Средства достижения цели………………………………………………4 Инструменты создания…………………………………………………..6 Практическая часть проекта……………………………………………8 Заключение……………………………………………………………….19 Источники информации………………………………………………..20 Приложение………………………………………………………………21 Введение Вычислительная техника в наше время является одним из важнейших компонентов процесса вычислений и обработки данных. Одними из первых приспособлений изначально служили счётные палочки, которые используются и сегодня в начальных классах. Постепенно вычислительные средства совершенствовались и развивались. Появились более сложные устройства, такие как: абак, логарифмическая линейка, калькулятор, компьютер. Наш проект «Математический помощник 2» (далее МП2), представляет собой программу, которая вычисляет квадратные неравенства, уравнения, системы уравнений, находит производные функций, которые помогут в вычислениях и обработке данных для получения точного и подробного ответа. Актуальность работы Ускорение решения уравнений и неравенств, нахождения производных, а также выполнения других математических операций — это является актуально в наши дни, особенно для обучения учащихся, ускорение в расчетах, а так же помощь учителям для получения подробного и верного результата. Объект изучения Программирование. Предмет изучения Информатика и алгебра. Цель С применением знаний и навыков в области программирования написать программу для решения квадратных неравенств и уравнений, систем уравнений и нахождения производных функций. Задачи
Средства достижения цели
Обоснование подбора среды разработки 1. Инструменты Главная причина изучения C# кроется в огромном количестве инструментов, которые поддерживает этот язык. Visual Studio является одной из самых многофункциональных и мощных сред разработки на рынке. Framework.Net предоставляет сотни библиотек для создания веб-приложений, обеспечения безопасности, работы с файловыми системами и т.д. 2. Популярность C# — один из самых популярных языков программирования. Это важно для разработчиков, поскольку популярность языка прямо пропорциональна тому, насколько для него будут доступны справочные и другие материалы, нужные для новичка в данной сфере. Это сэкономит огромное количество времени новичкам при решении различных задач в разработке. 3. ГибкостьГибкость языка C# является огромным преимуществом. Разнообразие приложений, которые могут быть разработаны с помощью С#, Framework.Net и Visual Studio практически безгранично:
Конечно, все эти вещи возможно выполнять и с помощью других языков программирования, но обычно, в таких случаях, используются сторонние инструменты других разработчиков. Программисты, которые работают с C# имеют огромный набор инструментов, поддерживаемых Microsoft для разработки любого типа приложения. Инструменты создания МП2
Работа над созданием интерфейса Некоторые примеры: Сглаживание углов формы { IntPtr hRgn = CreateRoundRectRgn(0, 0, 320, 400, 65, 65); SetWindowRgn(this.Handle, hRgn, true); } Подобные элементы (PictureBox, Button, Textbox, Panel) Прозрачность формы this.FormBorderStyle = FormBorderStyle.None; this.AllowTransparency = true; this.BackColor = Color.AliceBlue; this.TransparencyKey = this.BackColor; И т.д. Практическая часть проекта
Для успешного освоения учащимися материала в проект решили добавить справочную систему. В ходе разработки проекта было принято решение добавить в программу калькулятор для удобства пользователей и универсальности программы. Фрагмент реализации программы приведен в разделе Приложения.
Блок схемы создавались для каждого этапа реализации проекта. Приведем пример алгоритма решения квадратного уравнения.
В ходе написания программы возникали вопросы о реализации той или иной функции. Например, как добавить звуковой эффект при загрузке окна пользователя. Мы самостоятельно занимались поиском информации, как в Интернете так и в книгах по программированию в С#.
Для позитивного восприятия интерфейса программы мы создали персонажа, который олицетворяет математического помощника. Персонаж помощник: И другие иллюстрации. Экран загрузки Цветовая схема: Выбор цветовой схемы не случаен. Мы подобрали гармоничные оттенки, которые сочетаются между собой с точки зрения дизайна. В начале работы над проектом мы рисовали эскизы окон программы. Затем реализовывали их в программе. Выбирали наилучшие, добавляли кнопки и другие элементы. Главные задачи простота, удобство и понятность навигации были решены. На экран проекта были добавлены часы для удобства и информация о разработчиках. Начальный эскиз Итоговый эскиз
Версия 0.01 Версия 0.07 Версия 0.17(а) Версия 0.191(с) Финальная версия
После окончаниния разработки каждого этапа проводилось тестирование на правильность выполнения вычислений, отсутствие математических ошибок, правильность графиков функций и графических неточностей. Рекомендуемая операционная система Windows 7. Заключение
Источники информации
Приложение Фрагмент кода решения квадратных уравнений public void button1_Click(object sender, EventArgs e) { if (textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "") { Error ee = new Error(); ee.Show(); } else { label7.Text = "-"; label8.Text = "-"; label9.Text = "-"; label10.Text = "-"; label11.Text = "-"; label12.Text = "-"; double a = Convert.ToDouble(textBox1.Text); double b = Convert.ToDouble(textBox2.Text); double c = Convert.ToDouble(textBox3.Text); double d = 0; double d1 = 0; double d2 = 0; double d3 = 0; //text1 label7.Text = textBox1.Text + "(x^2) "; if (b >= 0) { label7.Text += "+ "; } label7.Text += textBox2.Text + "x"; if (c >= 0) { label7.Text += " +"; } label7.Text += " " + textBox3.Text + " = 0"; //дискриминант d = (b * b) - (4 * a * c); //text2 label8.Text = ""; label8.Text = "D = ((" + Convert.ToString(b) + ")^2) - 4 * " + Convert.ToString(a) + " * " + Convert.ToString(c) + " = " + Convert.ToString(d); //Вывод if (d > 0) { //функции для целочисленого выведения из корня √() c = Math.Sqrt(d); d1 = c; d1 = Math.Truncate(d1); d1 = c - d1; //выносится из под корня if (d1 == 0) { d1 = 0; d3 = (-b + c) / (2 * a); d1 = d3; d1 = Math.Truncate(d1); d1 = d3 - d1; if (d1 == 0) { //х1 d2 = (-b + c) / (2 * a); label9.Text = ""; label9.Text = "x1 = ((-(" + Convert.ToString(b) + ")) + " + Convert.ToString(c) + ") / ( 2 * " + Convert.ToString(a) + " ) = " + Convert.ToString(d2); label11.Text = "х1 = " + Convert.ToString(d2); } else if (d != 0) { //х1 label9.Text = ""; d1 = a * 2; d2 = -b + c; label9.Text = "x1 = ((-(" + Convert.ToString(b) + ")) + " + Convert.ToString(c) + ") / ( 2 * " + Convert.ToString(a) + " ) = "; label9.Text += Convert.ToString(d2) + " / " + Convert.ToString(d1); label11.Text = "x1 = " + Convert.ToString(d2) + " / " + Convert.ToString(d1); } d1 = 0; d3 = (-b - c) / (2 * a); d1 = d3; d1 = Math.Truncate(d1); d1 = d3 - d1; if (d1 == 0) { //х2 d2 = (-b - c) / (2 * a); label10.Text = ""; label10.Text = "x2 = ((-(" + Convert.ToString(b) + ")) - " + Convert.ToString(c) + ") / ( 2 * " + Convert.ToString(a) + " ) = " + Convert.ToString(d2); label12.Text = "х2 = " + Convert.ToString(d2); } else { //х2 label10.Text = ""; d1 = a * 2; d2 = -b - c; label10.Text = "x2 = ((-(" + Convert.ToString(b) + ")) - " + Convert.ToString(c) + ") / ( 2 * " + Convert.ToString(a) + " ) = "; label10.Text += Convert.ToString(d2) + " / " + Convert.ToString(d1); label12.Text = "x2 = " + Convert.ToString(d2) + " / " + Convert.ToString(d1); } } else { label9.Text = "x1 = ((-(" + Convert.ToString(b) + ")) + √(" + Convert.ToString(d) + ")) / ( 2 * " + Convert.ToString(a) + " ) = "; c = 0; c = 2 * a; label9.Text = "x1 = ((-(" + Convert.ToString(b) + ")) + √(" + Convert.ToString(d) + ")) / ( " + Convert.ToString(c) + " )"; label11.Text = "x1 = ((-(" + Convert.ToString(b) + ")) + √(" + Convert.ToString(d) + ")) / ( " + Convert.ToString(c) + " )"; label10.Text = "x2 = ((-(" + Convert.ToString(b) + ")) - √(" + Convert.ToString(d) + ")) / ( 2 * " + Convert.ToString(a) + " ) = "; c = 0; c = 2 * a; label10.Text = "x2 = ((-(" + Convert.ToString(b) + ")) - √(" + Convert.ToString(d) + ")) / ( " + Convert.ToString(c) + " )"; label12.Text = "x2 = ((-(" + Convert.ToString(b) + ")) - √(" + Convert.ToString(d) + ")) / ( " + Convert.ToString(c) + " )"; } } else if (d == 0) { c = -b / (a * 2); d1 = c; d1 = Math.Truncate(d1); d1 = c - d1; if (d1 == 0) { label9.Text = ""; label9.Text = "x = -" + Convert.ToString(b) + " / ( 2 * " + Convert.ToString(a) + " ) = " + Convert.ToString(c); label11.Text = "х = " + Convert.ToString(c); } else { d1 = a * 2; label9.Text = "x = " + Convert.ToString(b) + " / ( 2 * " + Convert.ToString(a) + " ) = "; label9.Text += Convert.ToString(b) + " / " + Convert.ToString(d1); label11.Text = "x = " + Convert.ToString(b) + " / " + Convert.ToString(d1); } } else { label9.Text = "нет корней"; label11.Text = label9.Text; } } } Ограничения ввода private void textBox4_KeyPress(object sender, KeyPressEventArgs e) { char number = e.KeyChar; if ((e.KeyChar <= 59 || e.KeyChar >= 63) & (e.KeyChar <= 7 || e.KeyChar >= 9)) { e.Handled = true; } } Фрагмент кода калькулятора private void button16_Click(object sender, EventArgs e) { if (OldCifer != "" && textBox1.Text != "") { if (done == 1) { textBox1.Text = Convert.ToString(Convert.ToDouble(OldCifer) + Convert.ToDouble(textBox1.Text)); textBox2.Text = ""; done = 0; } else if (done == 2) { textBox1.Text = Convert.ToString(Convert.ToDouble(OldCifer) - Convert.ToDouble(textBox1.Text)); textBox2.Text = ""; done = 0; } else if (done == 3) { textBox1.Text = Convert.ToString(Convert.ToDouble(OldCifer) / Convert.ToDouble(textBox1.Text)); textBox2.Text = ""; done = 0; } else if (done == 4) { textBox1.Text = Convert.ToString(Convert.ToDouble(OldCifer) * Convert.ToDouble(textBox1.Text)); textBox2.Text = ""; done = 0; } else { textBox2.Text = ""; } } else if (done == 0) { if (textBox1.Text == "") { MessageBox.Show("Введите данные"); } else { textBox1.Text = textBox1.Text; } } } private void button8_Click(object sender, EventArgs e) { done = 2; OldCifer = textBox1.Text; textBox2.Text = textBox1.Text + "-"; textBox1.Text = ""; } private void button6_Click(object sender, EventArgs e) { done = 3; OldCifer = textBox1.Text; textBox2.Text = textBox1.Text + " /"; textBox1.Text = ""; } private void button4_Click(object sender, EventArgs e) { done = 4; OldCifer = textBox1.Text; textBox2.Text = textBox1.Text + " *"; textBox1.Text = ""; } private void button15_Click(object sender, EventArgs e) { done = 0; OldCifer = ""; textBox1.Text = ""; textBox2.Text = ""; } |
«Решение тригонометрических уравнений» Образовательная: закрепить навыки решения простейших тригонометрических уравнений; показать методы решения тригонометрических уравнений... |
Уроке. Рекомендации классу Цель : закрепить навыки решения простейших тригонометрических уравнений; показать методы решения тригонометрических уравнений с использованием... |
||
Тема урока : Решение тригонометрических уравнений Отработка умений и навыков учащихся с помощью опорных сигналов при решении простейших и сложных тригонометрических уравнений |
Методическая разработка тренажера по математике для 6 7 класса по теме Тренажер предназначен для учащихся 6–7 классов с целью отработки и совершенствования навыков решения уравнений первой степени, содержащих... |
||
Мир транспорта и технологических машин 2011 эксплуатация, ремонт, восстановление Получена система обыкновенных дифференциальных уравнений, которая при помощи аппарата производящих функций сведена к линейному уравнению... |
2. Обоснована процедура сведения задачи факторизации матриц-функций... Наиболее важные результаты фундаментальных исследований, полученные в институтах спбнц ран за 2008-2009 годы |
||
Модели неустойчивого исторического развития Основные понятия математической теории хаоса формулируются на с помощью т н дифференциальных уравнений. Что это такое и как лучше... |
"Решение уравнений" с применением технологии ркмчп 59 Международная педагогическая дистанционная конференция «Педагогика и образование», сборник статей, часть 4 |
||
Программа основана на системе дифференциальных уравнений в частных... Взаимодействие с программой возможно стандартным способом – через графический интерфейс пользователя (gui), либо программированием... |
Обучающая программа по дисциплине Организация ЭВМ и систем содержание В авм для решения такого рода уравнений обычно используются электрические процессы, которые описываются (моделируются) такого же... |
||
Денещик Татьяна Борисовна Персональная карточка №102-735-350 Технологическая карта Мой друг! Сегодня тебе предстоит изучить основные методы решения тригонометрических уравнений |
Цель освоения дисциплины: ознакомление студентов с основами функционирования... Рассмотреть особенности конкретных видов производных финансовых инструментов, возможности использования их в хозяйственной практике... |
||
1 Цель,задачи дисциплины, её место в подготовке специалиста (с учетом требований фгос) Овая документация -заключается в изучении и усвоении студентами необходимого комплекса теоретических знаний и практических навыков... |
1. цели и задачи дисциплины Цель курса дать основы знаний в области инженерного анализа и проектирования систем автоматизированного и автоматического управления... |
||
Название программы Аннотация на программу Перечень методических приложений к программе Формирование знаний, умений и начальных навыков в использовании некоторых видов военной и морской техники. Активизация полученных... |
Рабочая программа по Блочному программированию позволяет изучать... В связи с этим возникает необходимость более раннего освоения навыков программирования и развития логического мышления. Наиболее... |
Поиск |