Проект "Создание автоматизированного решебника физических задач"
творческая работа учащихся по физике (8 класс) на тему

Гуцу Наталья Александровна

Творчекий проект ученицы 9 класса Лукьянцевой Е.

Скачать:


Предварительный просмотр:

Муниципальное бюджетное образовательное учреждение

 «Средняя образовательная школа № 25»

Проект

Создание автоматизированного решателя физических задач

в среде MS Excel

Выполнила: Лукьянцева Е. А.,

ученица 9 «А» класса

Руководитель: Гуцу Н.А.,

учитель физики

Нижневартовск - 2014

Содержание

Введение        3

Обзор возможностей VBA в MS Excel        4

Реализация  проекта        8

Заключение        9

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


Введение

Изучая физику, я столкнулась с необходимостью выполнения многочисленных расчётов.  В этом учебном году мы начали изучение физики с темы  «Законы взаимодействия и движения тел». При выполнении вычисления часто требуется получить результаты для различных объектов, например для планет солнечной системы. При расчётах часто приходится использовать различные физические константы (например, гравитационную постоянную и другие). Также в задачах используются значения радиусов планет, их масс, расстояния от солнца до планеты.

Числа в вычислениях огромны, но проблемы с вычислениями легко решаются с помощью автоматизации расчётов.

Простейшим способом автоматизации является использование табличного процессора MS Excel. Автоматизировать расчёты можно непосредственно в таблицах MS Excel с использованием формул и встроенных математических функций табличного процессора.

Однако использование таблиц ограничивает в некоторой степени возможности выбора исходных данных при проведении вариативных расчётов.

Более широкие возможности для автоматизации расчетов дают программы, созданные в среде MS Excel с использованием VBA.

Объект   исследования – автоматизированный  решатель  физических задач в среде VBA.

Предмет исследования - возможности VBA  для автоматизации решения задач.  

Гипотеза: Автоматизировать расчёты можно непосредственно в таблицах MS Excel с использованием формул и встроенных математических функций табличного процессора.

Цель работы:

создание электронного решателя по физике, позволяющего производить расчеты на основе ввода различных значений исходных данных.

Задачи работы:

  1. изучение возможностей VBA,
  2. создание программы  для электронного  решателя.

Обзор возможностей VBA в MS Excel

Visual Basic for Applications (VBA, Visual Basic для приложений) — упрощённая реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office (включая версии для Mac OS), а также во многие другие программные пакеты, в том числе AutoCAD, WordPerfect и ESRI ArcGIS. VBA может использоваться для управления приложением (меню, панели инструментов, формы пользователя, диалоговые окна и т.д.), а также для создания, импорта и экспорта различных форматов файлов.

VBA — транслируемый язык. Это означает, что его команды сначала преобразуются к исполняемой форме. Контейнеры VBA (Access, Excel, Word) могут сохранять оттранслированную программу в скрытой форме в исходном документе (чтобы избежать перекомпиляции при каждом выполнении программы). Исполнение кода происходит в виртуальной машине (как в Java), что зачастую ошибочно называют интерпретацией. Несмотря на его схожесть со многими старыми диалектами BASIC VBA не совместим с ними, кроме Microsoft Visual Basic до версии 6, и не совместим с VB.NET.

Как следует из названия, VBA близок к Visual Basic, но может выполняться лишь в рамках приложения, в которое он встроен. Кроме того, он может использоваться для управления одним приложением из другого при помощи OLE Automation (например, таким образом можно создать документ Word на основе данных из Excel).

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

Использование VBA с приложениями (Access, Excel, Word) предполагает соответствующую терминологию и языковые конструкции — так называемую «объектную модель приложения».

Автоматизация в офисных программах с помощью VBA (Visual Basic for Applications) реализуется в основном с помощью макросов.  

 Использование VBA дает возможности записи и воспроизведения макросов, программирования для создания приложений. Макрос это подпрограмма, т.е. самостоятельная последовательность команд, выполняемая при вызове по имени.

Недостаток программ VBA состоит в том, что  созданные программы требуют для выполнения среду того продукта, в который встроены.

При выборе VBA для реализации проекта важно помнить, что если создать приложение на VBA для MS Excel, то оно будет запускаться и работать в среде MS Excel.

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

С помощью макросов часто создают вирусы, поэтому их использование ограничено. Не всегда созданную программу (макрос) можно запустить на другом компьютере. Но в ближайшем будущем разработчики  обещают реализовать создание независимых приложений на основе применения VBA. В будущем Microsoft планирует заменить VBA на Visual Studio Tools for Applications (VSTA) — инструментарий расширения функциональности приложений, основанный на Microsoft .NET

Структура программы на VBA имеет вид:

Sub название()

Оператор 1

Оператор 2

Оператор 3

…..

Оператор n

End Sub

Между операторами в программе ставят двоеточие или пишут их с новой строки.

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

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

Приведем  примеры описания переменных:

Dim f as integer

Dim  s as single

Dim d as string

Переменные можно и не описывать в VBA. Но при необходимости их можно описывать,  как показано выше.

Одно служебное слово Dim  можно использовать для описания нескольких переменных.

Основные типы переменных, используемые в программах:

Single-тип вещественный;

Integer-тип целочисленный;

String-тип строковый.

Приведем пример описания переменных (в тексте программы):

Sub название()

Dim f as integer

Dim  s as single

Dim d as string

…….

Оператор n

End Sub

Рассмотрим основные  операторы VBA.

Важнейшим оператором является =(оператор присваивания). Этот оператор используется для присваивания значения переменной

Примеры использования операторов присваивания:

F=12

S=a*b

Q=h+r/2

D=“string”

В программах, возможно, осуществить ввод данных с клавиатуры:

Примеры программного кода для ввода данных с клавиатуры:

R=inputbox(“Введите радиус“)

H=inputbox(“Введите высоту“)

Вывод результатов вычислений можно реализовать путем вывода окна сообщений и или путем вывода на пользовательской форм е(окне) Userform, можно также выводить и сохранять на лист MS Excel, в текстовый файл и т.д.
Примеры вывода результатов с помощью окна сообщений:

Msgbox(“Площадь равна=“&S);

Msgbox(“Периметр равен=“&P).

Для успешного создания программ, необходимо, прежде изучить теоретические основы языка программирования, затем надо изучить основы работы со средой  программирования. Как создать программу?  Чтобы создать программу, надо попасть в среду программирования VBA.

В старых версиях Excel попасть в редактор VBA можно было с помощью пункта меню MS Excel. В современных версиях MS Excel попасть в редактор VBA можно, используя создание или изменение макросов. Макрос – именованная сохраняемая совокупность действий, используемая для автоматизации выполнения задач. Макросы записываются на языке программирования Visual Basic для приложений (VBA).

В некоторых программах, в том числе в MS Excel, макросы создаются автоматически. Для начала работы с макросом его  вначале надо записать или просто создать, задав имя макроса.

При вызове команды «запись макроса» необходимо задать его имя и начать запись  макроса. Если выбрать команду «создание макроса», то можно  сразу зайти в среду редактирования макроса и начать писать программу, реализующую макрос. Если выбрать команду «запись макроса», то нужно последовательно выполнять все действия, в процессе записи все действия записываются MS Excel в виде кода VBA. Для завершения процесса записи нужно завершить запись макроса.

Код макроса можно просмотреть (команда Войти) или изменить,  так мы попадаем в среду редактора VBA.

Воспроизведение макросов или их исполнение  осуществляется с помощью пункта меню Макросы-Макросы  - выполнить (табл. 1).

Алгоритм запуска (макроса) имеет вид (табл.2):

  1. Выбор других команд
  2. Изменение настроек центра управления безопасностью
  3. Центр управления безопасности,
  4. Включение всех макросов,
  5. Путем изменения макросов в центре безопасности,
  6. Пример работы программы для вычисления площади треугольника.

Пример окно редактора VBA с кодом  программы-примера показан на рис.1.Работа программы начинается с  ввода данных  (рис.2), показан пример ввод данных  с использованием  inputbox, на рис. 3  показан вывод результата. Осуществление запуска макроса на исполнение показано на рис.4.

Использование inputbox  не всегда удобно, так как может привести к ошибке при выполнении программы, если пользователь забудет ввести числовое значение в окно ввода диалогового окна. Поэтому удобнее использовать пользовательские окна с элементами управления для ввода и вывода результатов.

Пользовательское окно Userform можно создать в среде редактора VBA. Пример создания пользовательского окна показан на рис.5 - 10.

Результаты  можно выводить и сохранять на лист MS Excel, в текстовый файл и т.д.


Реализация  проекта

Разработка проекта началась с выбора тем. В качестве тем были использованы: законы  взаимодействия и движения тел, механические колебания и волны, звук. По каждой теме реализовано автоматизированное решение ряда типовых задач.

По первой теме предлагается три задачи, по второй теме две задачи. Выбор задач производиться с использованием пользовательской формы (рис.11-17).

Обработчик события-щелчок на кнопку для решения этой задачи

Private Sub CommandButton1_Click()

t = Val(TextBox1.Text)

l = Val(TextBox2.Text)

v = l / t

s = Str(v)

ms = Format(v, "###0.00")

Label7.Caption = ms

End Sub

В таблице 3 приводится объяснение команд подпрограммы.

Далее показана форма с результатами расчетов задачи 2 по теме 2 (рис. 18).


Заключение

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

Я изучила возможности VBA в MS Excel, создала электронный решебник по физике, позволяющий производить расчеты на основе ввода различных значений исходных данных.

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

Разработанную мною программу можно использовать везде, где установлен MS Excel, и поддерживается использование макросов.  Проект в дальнейшем можно усовершенствовать, увеличив число задач и реализовав сохранение полученных решений при различных значениях входных параметров. Проект позволил углубить мои знания по информатике и физике.

Основное преимущество созданного приложения:

  1. Решение задач при различных наборах входных данных.
  2. Полная автоматизация расчётов.
  3. Удобный интерфейс программы.
  4. Графическая иллюстрация условия задачи (там, где это необходимо).
  5. Возможность в дальнейшем сохранения всех получаемых результатов решений и их  графический анализ при различных наборах параметров.

Перечислим задачи, реализованные в проекте:

  • Задачи на применение законов  сохранения импульса: задача о пуле и задача о движении ящика с песком.
  • Задача на вычисление ускорения свободного падения.
  • Задача о рыбаке (по теме «Механические колебания и волны»)
  • Задача на расчет параметров звуковой волны.

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

Литература:

  1. Джелен Б., Сирстад Т. Применение VBA и макросов в Microsoft Office Excel. --СПб.: Вильямс. 2005.
  2. Уокенбах Дж. Профессиональное программирование на VBA в Excel 2010. Киев: Диалектика.2010.  
  3. Couch A. Microsoft Access 2010 VBA Programming. Inside Out . Microsoft Press, 2011.


Предварительный просмотр:


Подписи к слайдам:

Слайд 1

Создание автоматизированного решебника физических задач в среде MS Excel Выполнила: Лукьянцева Е. А., ученица 9 «А» класса Руководитель: Гуцу Н.А., учитель физики

Слайд 2

Решение физических задач требует: Умение вычислять Умение анализировать результат решения Знание законов физики Знание физических констант Применить на практике

Слайд 3

Объект исследования – автоматизированный решатель физических задач в среде VBA. Предмет исследования - возможности VBA для автоматизации решения задач. Гипотеза: Автоматизировать расчёты можно непосредственно в таблицах MS Excel с использованием формул и встроенных математических функций табличного процессора.

Слайд 4

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

Слайд 5

Окно редактора кода VBA Менеджер проекта Окно кода меню Окно свойств

Слайд 6

Этапы работы над приложением Написание обработчиков событий Создание форм Определение структуры программы Подбор задач

Слайд 7

Ход создания приложения Начало работы Создание форм Размещение на форме элементов управления Написание кода обработчиков событий отладка конец Ссылка 1 Ссылка 2 Ссылка 1 Ссылка 1 Ссылка 1 Ссылка 1

Слайд 8

Меню Законы взаимодействия и движения тел Механические колебания и волны. Звук. Задачи на применение законов сохранения импульсов Задача на вычисление ускорения свободного падения Задача на механические колебания и волны Расчет параметров звуковой волны Структура Приложения

Слайд 9

Фрагмент программного кода Private Sub CommandButton1_Click() m1 = Val(TextBox1.Text) m2 = Val(TextBox2.Text) v1 = Val(TextBox3.Text) v2 = m1 * v1 / (m1 + m2) ms = Format(v2, "###0.00000") Label6.Caption = "Искомая скорость бревна " & ms End Sub

Слайд 10

Задача о пуле(интерфейс пользователя)

Слайд 11

Результат вычисления

Слайд 12

Интерфейс задачи о ящике с песком

Слайд 13

Результат вычисления

Слайд 14

Форма для решения задачи об ускорении свободного падения

Слайд 15

Результат вычисления

Слайд 16

Задача на механические колебания и волны

Слайд 17

Результат вычисления

Слайд 18

Расчет параметров звуковой волны

Слайд 19

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

Слайд 20

Спасибо за внимание

Слайд 21

Создание формы и работа в среде VBA Вставка формы Работа в среде VBA

Слайд 22

Размещение на форме управляющих элементов


По теме: методические разработки, презентации и конспекты

Элективный курс "Методы решения физических задач"

Элективный курс разработан для учащихся 10 классов профильной школы, является пропедевтическим курсом для освоения основных разделов физики. Программа курса знакомит школьников с понятием «физическа...

Рабочая программа факультатива по физике в 10 классе " Методы решения физических задач"

Данный материал содержит рабочую программу для факултативных занятий по физике в 10 класса. Решение задач является одним из основных методов обучения физики. Материал содержит развернутое тематическое...

Интегрированный урок физики и математики Тема урока: Решение физических задач с помощью линейных уравнений

Урок на данную тему проводился в рамках открытого методического дня школы. На уроке присутствовали учителя не только школы и города, но школ Республики Хакасия. Всего на уроке было гостей 16 человек. ...

Практикум по решению физических задач повышенной сложности для 7 класса.

 Практикум по решению физических задач повышенной сложности предназначен  для учащихся 7 класса. Программа курса составлена в соответствии с программой развития школы, соответст...

ПРОГРАММА КУРСА «РЕШЕНИЕ ФИЗИЧЕСКИХ ЗАДАЧ» Для учащихся 8 - 9 классов

Курс предназначен для подготовки учащихся 8-9-х классов, желающих приобрести опыт практического применения знаний по физике, а так же для осознанного выбора профильной направленности обучения в старше...

Работа с текстом при решении физических задач.

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

«Составление физических задач. Основные требования к составлению задач. Общие требования при решении физических задач»

Решение задач по физике – необходимый  элемент учебной работы. Задачи дают материал для упражнений, требующих применения физических закономерностей к явлениям, протекающим в тех или иных конкретн...