Примеры использования циклов для решения физических задач
Пример 5. Вычислить и объем параболоида вращения, полученного с помощью вращения параболы вокруг оси OZ. Высота параболоида равна H. Разобьем параболоид на достаточно большое количество N дисков (цилиндров) радиусов и высотой dz. Очевидно, объем параболоида (V) равен сумме объемов цилиндров (dV), а центр масс лежит на оси OZ в точке, координата которой определяется по формуле
Задаем следующую заготовку
procedure TForm1.Button1Click(Sender: TObject); Var a,H,z,dz,r,V,dV,S,dS:real; N,i:integer; Begin //начало процедуры a:=StrToFloat(Edit1.Text); // ввод параметра параболы H:=StrToFloat(Edit2.Text); // высота параболоида N:=StrToInt(Edit3.Text); // количество дисков (точность вычисления) dz:=H/N; // высота диска V:=0; // заводим ячейку памяти для вычисления объема S:=0; // заводим ячейку памяти для вычисления суммы for i:=1 to N do //открываем цикл (i – номер диска) begin //начало тела цикла z:=dz*i; // координата диска r:=sqrt(z/a); // радиус диска dV:=pi*r*r*dz; // объем диска dS:=z*dV; // слагаемое суммы V:=V+dV; // накапливаем объем S:=S+dS; // накапливаем сумму end; //конец тела цикла Label4.Caption:='Объем параболоида'+#13 +'V= '+FloatToStr(V); // вывод результата объем Label5.Caption:='Центр масс параболоида'+#13 +'Z= '+FloatToStr(S/V); // вывод результата центра масс end; //конец процедуры
Пример 6. Составить программу для вычисления высоты и времени подъема шара массы m (кг) и радиуса r (cм), принимая, что сопротивление воздуха равно , где v- скорость движения, - площадь проекции тела на плоскость, перпендикулярную направлению его движения, и k- численный коэффициент, зависящий от формы тела и имеющий для шара значение 0,24 . Начальная скорость шара V0 (м/с).
Решение Применим второй закон Ньютона. Ось координат ОХ направим вверх. Тогда ускорение определяется по формуле . Как видим, ускорение изменяется, поэтому в данной задаче нельзя применять обычные формулы равноускоренного движения. Компьютерный метод решения задачи следующий. Рассмотрим достаточно малый промежуток времени dt, в течение которого скорость не успевает сильно измениться, поэтому на этом участке движение можно считать равноускоренным, поэтому возможно применение формул равноускоренного движения. Алгоритм решения следующий · Ввод констант k, g · Вводится точность решения задачи (максимальное время расчета, шаг по времени и количество малых промежутков времени, на которых производится расчет). Очень важно выбрать правильный шаг по времени dt. Чем меньше dt, тем точнее результат, но увеличивается машинное время для проведения расчетов. · Ввод данных массы, радиуса шара и начальной скорости через процедуры Edit · Ввод начальных условий. Согласно принципу причинности, для полного определения движения частицы необходимо задать начальное положение и начальную скорость. Для нашей задачи x 0 и v V0 · Вычисление площади сечения · Вычисление коэффициента · Если рассматривать движение в достаточно малый промежуток времени, движение можно считать равноускоренным. Поэтому вводится цикл по времени и на каждом участке вычисляется ускорение по формуле . · На каждом малом промежутке времени вычисляется новое значение скорости и координаты. · Вывод значения времени и координаты
procedure TForm1.Button1Click(Sender: TObject); Const g=9.8; // ускорение свободного падения k=0.24; // численный коэффициент dt=0.001; // малый промежуток времени Var m,r,V0,S,f,t,V,x,a:real; // описание переменных begin //начало процедуры m:=StrToFloat(Edit1.Text); // ввод массы r:=StrToFloat(Edit2.Text)*0.01; // ввод радиуса (в метрах) V0:=StrToFloat(Edit3.Text); // ввод начальной скорости S:=pi*r*r; // площадь f:=k*S/m; // коэффициент сопротивления t:=0; // начальное время V:=V0; // начальная скорость x:=0; // начальная координата while V>=0 do //введение цикла с условием begin //начало тела цикла a:=-g-f*V*V; // ускорение t:=t+dt; // пересчет времени V:=V+a*dt; // пересчет скорости x:=x+V*dt; // пересчет координаты end; //конец тела цикла Label7.Caption:='t= '+FloatToStr(t)+' c'+#13 // вывод времени +'x= '+FloatToStr(x)+' м'; // вывод координаты end; //конец процедуры
Популярное: Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней... Как построить свою речь (словесное оформление):
При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (478)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |