В работе приводится программа рассчёта объёма жидкости в цилиндрическом резервуаре, расположенном горизонтально.
Вложение | Размер |
---|---|
tezisy_k_nauchno_issl._rabote_mardanov_kurenov_almetevsk.docx | 55.62 КБ |
Вычисление объёма жидкости в цистерне цилиндрической формы
по горизонтальному замеру глубины
Марданов Тимур Рустемович,
Куренов Антон Юрьевич,
г. Альметьевск,
МАОУ – лицей №2, 10 класс
Рук. Садчикова Л.А.
Введение. Задача возникла перед работниками АЗС в связи с необходимостью вычислять объём остатка бензина в резервуаре в форме цилиндра, установленном горизонтально.
Один из сотрудников является выпускником нашего лицея и обратился к нам за помощью в создании(как вариант в написании) программы, с помощью которой можно будет легко производить сложные расчёты по нахождению объема оставшейся жидкости в цистерне с закругленным дном. Т.е данная имеет прикладной характер.
Основная часть. Итак, , посмотрим на цилиндр в разрезе (см. рисунок) и сформулируем наглядно.
Сначала необходимо найти объем всего цилиндра. Формула объема всего цилиндра известна - площадь основания, помноженная на высоту. Если уровень жидкости m больше половины необходимо найти объем части цилиндра, не заполненной жидкостью, а потом вычесть из общего объема. Составим формулу для вычисления объёма части цилиндра, отсекаемой плоскостью, параллельной оси (образующей) цилиндра, по площади основания части цилиндра и высоте сегмента. Т.е. найдем площадь фигуры, залитой синей жидкостью.
V=·L, где L-длина образующей, - площадь основания части круга – сегмента.
Видим, что площадь фигуры, залитой синей жидкостью, получается при вычитании из площади сектора площади верхнего треугольника и тогда:
, где S-сектора: (α- угол в радианах), S-треугольника, лежащего в этом секторе: . Найдем угол α как 2arctg(h/y), где h= После чего вычислим площадь сектора, площадь треугольника и найдем разницу.
Справочно : в ходе написания программы мы столкнулись с невозможностью применения в выбранном языке программирования вычисления угла по его синусу. Применив тригонометрические преобразования, для написания программы вывели данную формулу.
S = (2arctg( /y)*/2)-2yb
Программа была написана на языке Паскаль.
Исходный код:
Program cisterna;
Var v, l, a, x, m, c, n, w, h, r, f, t, kg, j : real;
a1 : array [1..10000] of string;
b, g: array [1..10000] of integer;
i, n1 : longint;
s : string;
Begin
writeln('Введите длину цистерны');
readln(l);
Writeln('Введите радиус цистерны');
Readln(r);
Writeln('Введите высоту столба жидкости в цистерне');
readln(h);
if h < r then begin
m := sqrt( 2 * h * r - sqr(h));
a := 2 * m;
c := m/(r - h);
x := 2 * arctan(c);
n := (x * sqr(r))/2;
w := ((r - h) * a)/2;
v := (n - w) * l;
writeln('Oбъём жидкости равен ',v:6:3);
End;
if h > r then begin
m := sqrt(2 * h * r - sqr(h));
a := 2 * m;
c := m/(h - r);
x := 2 * arctan(c);
n := (x * sqr(r))/2;
w := ((h - r) * a)/2;
f := n - w;
t := (pi * sqr(r)) - f;
v := t * l;
writeln ('Oбъём жидкости равен: ',v:6:3);
End;
if h = r then begin
a := (pi * sqr(r))/2;
v := a * l;
writeln('Oбъём жидкости равен: ',v:6:3);
end;
Задачу можно расширить. Добавив в вычисления плотность жидкости и цену 1 литра бензина, можно будет определять массу и стоимость остатка бензина
writeln('Узнать вес жидкости? ');
read(s);
if (s=('yes'))or (s=('да')) then begin
a1[1]:='1)Hg';
a1[2]:= '2)H2S';
a1[3]:='3)H2O';
a1[4]:='4)Молоко';
a1[5]:='5)Машинное масло';
a1[6]:='6)Керосин';
a1[7]:='7)Спирт';
a1[8]:='8)Нефть';
a1[9]:='9)Ацетон';
a1[10]:='10)Бензин';
for i:=1 to 10 do
writeln(a1[i]);
b[1]:=13600;
b[2]:=1800;
b[3]:=1000;
b[4]:=1030;
b[5]:=930;
b[6]:=800;
b[7]:=800;
b[8]:=800;
b[9]:=790;
b[10]:=710;
writeln;
writeln('Введите номер предложенного вещества: ');
read(n1);
kg:=b[n1]*v;
writeln('Вес жидкости:');
writeln(kg:6:3,' кг');
end;
End.
Заключение. Программа апробирована на практике и может применяться для быстрых расчётов остатка жидкости в цистернах цилиндрической формы, т.е. имеет прикладное значение.
Также работа может быть продолжена в целях определения остатка жидкости в резервуарах иных форм, например, с эллипсом в основании.
Император Акбар и Бирбал
Одеяльце
Сказка "Морозко"
ГЛАВА ТРЕТЬЯ, в которой Пух и Пятачок отправились на охоту и чуть-чуть не поймали Буку
Мать-и-мачеха