25.04.2011, 20:28 | #1 (permalink) |
Новичок
Регистрация: 25.04.2011
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Помогите переделать программу в код паскаль,чтобы она была без классов
{$APPTYPE CONSOLE} uses SysUtils; Type otr=class private x1,y1,x2,y2,X,Y, dl,u:real; {координаты концов отрезка, его длина и угол с Ох в градусах} public constructor create(x1,y1,x2,y2:real); Function Get_dl:real; Function Get_u:real;//в градусах End; constructor otr.create(x1,y1,x2,y2:real); begin self.x1:=x1; self.x2:=x2;self.y1:=y1;self.y2:=y2; end; Function otr.Get_dl:real; begin X:=(x1+x2)/2; Y:=(y1+y2)/2; dl:=sqrt(sqr(X-0)+sqr(Y-0)); result:=dl; end; Function otr.Get_u:real; begin if abs(x1-x2)<1.0e-6 then u:=90 else u:=arctan((y1-y2)/(x1-x2))/pi*180; result:=u; end; Var n:integer; ugol:real;x,y:array of real; imax,jmax, i,j:integer; max:real; otr; begin { TODO -oUser -cConsole Main : Insert code here } Writeln ('Input ugol, n'); Readln (ugol, n); SetLength (x,n); SetLength (y,n); Writeln ('x,y'); for i:= 0 to n-1 do Readln(x[i],y[i]); max:=0; imax:=-1; jmax:=-1; for i:= 0 to n-2 do for j:= i+1 to n-1 do begin o:=otr.create(x[i],y[i],x[j],y[j]); if abs(ugol-o.Get_u)=90 then if max<o.Get_dl then begin max:=o.Get_dl; imax:=i; jmax:=j end; o.Destroy; end; if imax=-1 then writeln ('net otrezkov') else writeln ('imax=', imax+1, 'jmax=', jmax+1); readln end. |
25.04.2011, 20:28 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Схожие темы можно найти через поиск, но я помогу вам и вышлю их сюда Помогите составить программу на турбо паскаль Выход из спящего режима - чтобы начать программу щелкните имя пользователя Помогите переделать задачу Помогите переделать задачу |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|