Для проверки программы на работоспособность было решено выбрать задачи на тему Архимедова сила из сборника задач по физике В. И. Лукашика [14]. Решались все задачи кроме качественных, с 625 по 659. Программа смогла решить задачи под номерами 625, 626, 627, 628, 629, 630, 635,639,646, 651, частична помогла в решении задач под номерами 631, 632, 633, 634, 636, 638, 640, 641,642, 643, 644, 645, 647, 650, 652, 654,657,658, 659, и не смогла решить задачи под номерами 648, 649,651, 653, 655, 656, потому что в этих задачах используются формулы, из других разделов. А в задачах, которые программа решила частично, использовались формулы касающиеся данной темы, но основная формула не существует в каталоге программы. Например, в задаче 634 требуется найти разницу между силой тяжести в воздухе и силой тяжести в воде. С помощью программы можно найти силу тяжести в воздухе, потом силу тяжести в воде. Только после этого вне программы можно вычислить разницу между этими величинами.
Выводы
Интерфейс программы представляет собой традиционное для Windows оконное приложение. В программе есть главное окно с выбором темы задачи, и окно для непосредственного решения задачи на выбранную тему, содержащее поле для ввода текста и справочный материал. Алгоритм программы предусматривает поэтапное решение задачи: анализ условия, перевод в СИ, составление уравнений и их числовой расчет. Для анализа условия задачи был выбран метод ключевых слов и метод ближайших k-соседей.
Заключение
История компьютера тесным образом связана с попытками облегчить и автоматизировать большие объемы вычислений. Существуют множество программ, которые нацелены облегчить учебу школьников и делать её познавательнее. Предлагаемый проект посвящен реализации программы относящийся к данному направлению. Целью является разработка программы для решения физических задач. Назначение разрабатываемой программы состоит в предоставление пользователю средства, которое окажет помощь при решении задач по физике.
Решение большинства физических задач расчетного характера можно разделить на четыре этапа: а) анализ условия задачи; б) составление уравнений, связывающих физические величины; в) совместное решение полученных уравнений; г) анализ полученного результата и числовой расчет. Алгоритм программы устроен следующим образом. Из текста задачи, с помощью ключевых слов и единиц измерения, программа выводит дано и находит искомую величину. Затем в зависимости от того, какие величины даны и какую нужно найти программа (при необходимости) выводит единицу измерения данных величин в системе СИ, решение задачи, вычисление и ответ. Таким образом, программа может оказать помощь ученику на любом из этапов решения задачи: запись данных величин, перевод в систему СИ, составление уравнений, вычисления.
Программа оказывает определённую помощь школьникам при решении большинства задач. В дальнейшем для большей доступности и удобства планируется создание телефонной версии программы и возможность распознавания текста с картинки. Планируется добавить возможность «обучения программы» с использование базы данных, т.е. пользователь сам сможет добавлять в программу новые величины и расчётные формулы, что позволит пользователю адаптировать программу под свои нужды.
Библиографический список:
1. http://nsportal.ru/detskiy-sad/raznoe/2012/01/10/doklad-kompyuter-v-sovremennom-mire.
2. http://www.roscomputer.ru/products/rol-kompyuterov-v-sovremennom-mire.
3. Зинкевич В.П.Вычислительная техника и программирование - Московское государственного открытого университета, 2011-325.
4. http://infolike.narod.ru/comp.html.
5. http://wiki.iteach.ru/index.php/роль_компьютера_в_жизни_человека
6. Мелёшина А.М. Решайте задачи по физике, а мы вам поможем. \\ Просвещение, 1994 г - 206 с.
7. Усова А.В. Практикум по решению физических задач. \\ Просвещение, 1992 г -208 с.
8. Балаш В.А. Задачи по физике и методы их решения.\\перераб. И доп-М.: Просвещение, 1983г.-432 с.
9. П.В. Трусова. Введение в математику и моделирование. \\ Логос, 2014 г.-125 с.
10. Карманова В.Г. Математическое программирование. \\ ФИЗМАТЛИТ, 2011 г.-230 с.
11. Гутник Е.М. Учебник для общеобразовательных учебных заведений. \\DРОФА 2002 г.-255 с.
12. Королев В.Ю. Вероятностно-статистические методы декомпозиции волатильности хаотических процессов: Учебное пособие. \\МГУ, 2011г.-100 с.
13. Пакулин В.Н. Задачи по физике и методы их решения. \\ Просвещение, 1983г.-432 с.
14. Лукашик В.И. Сборник задач по физике. \\Просвещение, 2011г.-239 с.
15. Боярский К. К. Введение в компьютерную лингвистику. Учебное по-собие. – СПб: НИУ ИТМО, 2013. – 72 с.
16. ДоорсДж. и др. Пролог-язык программирования будущего: Пер. с англ. -М.: Финансы и статистика, 1990. С. 52-57.
17. Каневский Е.А., Саганенко Г.И. Концептуальное обоснование компьютерного анализа массивов с текстами // Социология: методология, методы, математические модели. 1997.
18. Краткий обзор библиотеки Lazarus "Кодинг под linux"
Приложения
Приложение А
1. Сколько времени вы тратите при решении задач по физике?
А. в среднем до 15 минут. | |
Б. в среднем 15 до 30 минут. | |
В. в среднем от 30 минут и более. | |
Г. нисколько. |
2. Часто ли Вам не удаётся решить задачу?
А. всегда удаётся. | |
Б. редко не удаётся. | |
В. часто не удаётся. | |
Г. я их никогда не решаю. |
3. Встречали ли вы программу способную решать физические задачи?
А. встречал. | |
Б. не помню. | |
В. не встречал. | |
Г. никогда не интересовался этим. |
4. Хотели ли бы вы иметь такую программу?
А. да, пускай она решает задачи за меня. | |
Б. да, иногда я бы её использовал при решении задач. | |
В. нет, я всегда решаю задачи сам. | |
Г. нет, я не интересуюсь решением задач. |
Приложение Б
Листинг программы
unitUnit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
Menus;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
CheckBox7: TCheckBox;
ComboBox1: TComboBox;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
ListBox1: TListBox;
ListBox2: TListBox;
ListBox3: TListBox;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2,Unit3,unit4;
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
if checkbox1.Checked=true then begin
listbox1.Items.add('p=');
edit1.show;
end
else listbox1.Items.add('');
if checkbox2.Checked=true then begin
listbox1.Items.add('V=');
edit2.show;
end
else listbox1.Items.add('');
if checkbox3.Checked=true then begin
listbox1.Items.add('Fт вод.=');
edit3.show;
end
else listbox1.Items.add('');
if checkbox4.Checked=true then begin
listbox1.Items.add('Fт=');
edit4.show;
end
else listbox1.Items.add('');
if checkbox5.Checked=true then begin
listbox1.Items.add('m=');
edit5.show;
end
else listbox1.Items.add('');
if checkbox6.Checked=true then begin
listbox1.Items.add('pт =');
edit6.show;
end
else listbox1.Items.add('');
if checkbox7.Checked=true then begin
listbox1.Items.add('Fa=');
edit7.Show ;
end
else listbox1.Items.add('');
button1.Hide;
end;
procedure TForm1.Button2Click(Sender: TObject);
VAR pg,v,p,f,m,pt,fa,g:real;
a:string;
begin
pg:=0;
v:=0;
p:=0;
f:=0;
m:=0;
pt:=0;
fa:=0;
g:=10;
if checkbox1.Checked=true then pg:=strtofloat(edit1.text);end.
И.Т.Д.
Приложение В
рис. 1 Иллюстрация работы алгоритма Роккио
Рис. 2. Иллюстрация работы алгоритма k-ближайших соседей.
Приложение Г
Алгоритм разбиения на слова
начало |
Перекодирование текста UTF8 |
S[i]=’ ’ или ‘.’ или ‘,’ или ‘?’ |
нет |
c:=c+s[i]; |
k:=k+1 |
m[k]:=c |
да |
Ввод текста S |
For i:=1 to length(s) |
c:=’’ |
Конец цикла i |
Конец |
For i:=1 to k |
M[i]= ключ. слово искомой вел. |
начало |
M[i]= ключ. слово данной вел. |
нет |
да |
да |
M[i+1]= ключ. слово физич. вел. |
да |
Вывод на экран иск. величины |
Вывод на экран «искомая величина не определена» |
нет |
M[n]= единица измерения физ. Вел. |
For n:=1 to k |
да |
Вывод на экран ед. измер. , чис. знач. данной величины |
Конец цикла n |
нет |
Конец цикла i |
конец |
нет |
Дата: 2019-11-01, просмотров: 336.