Главная Обратная связь

Дисциплины:






Задача 2. Вычисление площади ватерлинии и коэффициента полноты ватерлинии



Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

Высшего профессионального образования

САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ МОРСКОЙ ТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТ»

Кафедра информатики и информационных технологий

КУРСОВАЯ РАБОТА

 

 

По дисциплине: информатика

На тему: вычисление значения функций

 

 

Cтудент группы 1116

Пученкин Н.Д.

Преподаватель

Капонен В. А

 

 

Санкт-Петербург2013

 

 

Задача 1. Вычисление значения функции через разложение в ряд Тейлора

 

=1+ *x+ * + * +…………………... (a>0)

=1+ * + * * * + * * * * * +……….. (a>0)

 

Блок-схема

 

 


Нет Да

 


procedure TForm1.Button1Click(Sender: TObject);

var

x,a,s,k,l,m:double;

i,n:integer;

begin

a:=strToFloat(edit1.text);

x:=strToFloat(edit2.text);

n:=strToInt(edit3.text);

if(a>0) then

l:=ln(a);

k:=1;

s:=0;

m:=1;

for i := 1 to n do

begin

m:=m*(l/k)*x;

s:=s+m;

k:=(k+1);

end;

s:=s+1;

edit4.text:=FloatToStr(s);

 

end;

 

end.

 

Задача 2. Вычисление площади ватерлинии и коэффициента полноты ватерлинии.

1. В первой подпрограмме «Squar» происходит счет площади ватерлинии Sqw.

а) В начале считаем площади двух крайних в виде «треугольников» частей ватерлинии:

в носовой части нужно 1-ый шпангоут умножить на расстояние между ним и форштевнем dx; учитываем, что у нас 20 шпангоутов;

в кормовой части 20-ый шпангоут умножить на расстояние между ним и ахтерштевнем dx2;

оставшиеся площади умножить на 2;

б) Считаем сумму площадей, образуемых соответствующими шпангоутами:

r:=dx*y[1];

 

l:=dx2*y[19];

Формула площади ватерлинии Sqw:=(y[1]+y[19])/2;

 

2. Во второй подпрограмме «Kfc» выполняется вычисление коэффициента полноты площади ватерлинии Koef.

a) В начале считаем длину судна M. Она равна сумме шпаций, кроме последних 2-ух, расстояния от 1-ого шпангоута до форштевня dx и расстояния от 20-ого шпангоута до ахтерштевня dx2.

б) Теперь считаем ширину c. Она равна максимальной величине шпангоута, то есть 10-ого, умноженного на 2;

в) Теперь вычисляем коэффициент полноты площади ватерлинии:

Koef:=Sqw/(m*c).

 

 

Шпангоуты

Y[0]=0,000
Y[1]=2,888
Y[2]=5,814
Y[3]=8,598
Y[4]=11,178
Y[5]=13,484
Y[6]=15,408
Y[7]=16,838
Y[8]=17,694
Y[9]=17,976
Y[10]=18,000
Y[11]=18,000
Y[12]=18,000
Y[13]=17,652
Y[14]=16,884
Y[15]=15,620
Y[16]=13,914
Y[17]=11,768
Y[18]=8,820
Y[19]=4,752
Y[20]=0,000

 



Форштевень dx=10,01

Ахтерштевень dx1=dx2=10,5

Блок-схема

 


Блок-схема

Squar y,dx,dx1,dx2,Sqw,r,l
Вычисление площади ватерлинии Вычисление коэффициента полноты

 

           
   
 
 
 
   

 

 


 


procedure Squar(y:array of real;dx,dx1,dx2:real; var Sqw,r,h,l:real);

var

i:integer;

begin

r:=dx1*y[1];

l:=dx2*y[19];

h:=2*dx*((y[1]+y[19])/2);

for i:=2 to 18 do

begin

h:=h+y[i];

end;

Sqw:=2*dx*h+r+k;

end;

 

procedure Kfc(y:array of real; dx,dx1,dx2,Sqw:real; var Koef,m,c:real);

var

i:integer;

begin

m:=dx1+dx2+18*dx;

c:=2*y[10];

Koef:=Sqw/(m*c);

end;

 

 

procedure TForm1.Button1Click(Sender: TObject);

var

dx,dx1,dx2,Sqw,Koef,r,h,l,m,c:real;

i:integer;

y:array[0..20]of real;

begin

dx:=StrToFloat(edit1.Text);

dx1:=StrToFloat(edit2.Text);

dx2:=StrToFloat(edit3.Text);

for i:=1 to 20 do

begin

y[i]:=StrToFloat(memo1.Lines[i-1]);

end;

Squar(y,dx,dx1,dx2,Sqw,r,h,l);

Kfc(y,dx,dx1,dx2,Koef,Sqw,m,c);

edit4.Text:=FloatToStr(Sqw);

edit5.Text:=FloatToStr(Koef);

end;

 

end.

 





sdamzavas.net - 2020 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...