Дъга - изчисляване на хорда, радиус и ъгъл на дъга от окръжност

дължина на дъга - допирателна от точка към окръжност
октатна дъга - правоъгълник със заоблен връх, заменен с дъга
ъгъл на дъга между две допирателни
централен ъгъл на дъга и отстояние на хорда

Ако се свържат две точки A,B лежащи на една и съща окръжност, то най-късото разстояние между тях е дължината на хордата AB. Ако разстоянието между тези точки се измерва по окръжността получаваме дължината на съответната дъга. Една хорда разделя окръжността на две дъги не непременно равни по дължина и ъгъл. Само диаметърът на една окръжност дели същата окръжност на две равни дъги. Най-дългата хорда в една окръжност е нейният диаметър. При изчисляване отделните параметри на дъга ще ползваме следните определения и зависимости: Полудъга - ако хордата на дъгата е равна на диаметъра на окръжността. Такава дъга има ъгъл pi радиана. Октатна дъга - ако лицето на сектора формиран от такава дъга е 1/4 от лицето на кръга. Октатна дъга има ъгъл pi/2 радиана. Сегмент е част от кръг, ограничена от дъга и прилежащата й хорда. Сектор е част от кръг, ограничена от дъга и два радиуса свързващи центъра на кръга с двата края на дъгата. Ако диаметърът на дадена дъга е перпендикулярен на принадлежащата й хорда, то диаметърът е симетрала за тази хорда и минава също през средата на определена от хордата дъга.

Централен ъгъл - ако върха на ъгъл лежи на центъра на окръжността. Ъгълът на принадлежащата му дъга е равен на централния ъгъл.
Вписан ъгъл - ако върха на ъгъл лежи на окръжността, а рамената му пресичат окръжността. Ъгълът на принадлежащата му дъга е равен на удвоения вписан ъгъл.
Две дъги от една и съща окръжност са равни, ако са равни съответните им централни или вписани ъгли. Само диаметърът на една окръжност дели същата окръжност на две равни дъги.
Права, която има две общи точки с окръжност се нарича секуща.
Отношения между ъгъл на дъга и ъгъл между отсечки в окръжност:
Две прави пресичат окръжност, отсичайки от нея две дъги, съответно с ъгли yg1, yg2. Пресечната точка на правите не принадлежи на окръжността - правите не са успоредни. yg = abs (yg1-yg2) / 2 е ъгълът между двете прави.

Две прави пресичат окръжност, отсичайки от нея две дъги, съответно с ъгли yg1, yg2. Пресечната точка на правите лежи в окръжността. yg=(yg1+yg2) / 2 е ъгълът между двете прави.

Две прави пресичат окръжност, отсичайки от нея дъга с ъгъл yg1 - вписан ъгъл. Пресечната точка на правите лежи на окръжността - разглеждаме само дъгата между правите. yg=yg1 / 2 е ъгълът между двете прави.

В точката M, лежаща на окръжност минава допирателна.
Втора права минава точка М и разделя окръжността на две дъги yg1, yg2. Ако е въведен ъгъла на едната дъга yg1.
yg2=(2*pi-yg1) / 2 е ъгълът между правите, включващ втората дъга.

дължина на дъга - допирателна от точка към окръжност

Дадена е окръжност с радиус R и координати на центъра O(x,y). От точка M с координати M(x,y), лежаща извън окръжността се спуска допирателна до окръжността. Точката на тангиране е C. Отсечката OM пресича окръжността в точка B. Търсим ъгъл на дъга BC.

дължина на дъга - допирателна от точка към окръжност Алгоритъм

Триъгълникът OCM е правоъгълен, т.к. MC е допирателна към окръжността. ОC е радиуса на окръжността. OM намираме то теоремата на Питагор - разстояние между две точки с въведени координати: OM = sqrt ( (Ox -Mx)*(Ox-Mx) + (Oy-My)*(Oy-My) ) Ъгъл MOC в правоъгълния триъгълник OCM изчисляваме като acos (R/OM)

Следващата примерна програма дава решена задача за дължина на дъга:
#iinclude <iostream>
#include <cmath>
using namespace std;

double Pitagor ( double Ox, double Oy, double Mx, double My)
{ double hipot;
  hipot=sqrt((Ox-Mx)*(Ox-Mx) + (Oy-My)*(Oy-My));
  cout<<"hipotenuza  "<<hipot<<endl;
 return hipot;
}// hipotenuza - Pitagor 

int main()
{ double Ox,Oy,Mx,My,hip,Lcb,Ycb,R;
  char ose;
   cout<<"Dadena e okryvnost predstawena s koordinati na centyra Ox,Oy\n";
   cout<<"radius R. Dadena e i tochka M, neprinadlevasha kym okryvnostta.\n";
   cout<<"Koordinatite na tochkata sa Mx, My. Prez tochkata e prekarana\n";
   cout<<"dopiratelna kym okryvnostta. Tochkata na tangirane e C.\n";
   cout<<"Otsechkata swyrzwacha centyra i tochkta presicha okryvnostta\n";
   cout<<"w tochka B. Tyrsim dylvinata na dyga BC.\n";
   cout<<"Primer: 0,0; 3; 5,0 Izhod: 2.78189 \n";
 do {
   cout<<"Wywedete koordinata Ox: ";cin>>Ox;
   cout<<"Wywedete koordinata Oy: ";cin>>Oy;
   cout<<"Wywedete radius: ";cin>>R;
   cout<<"Wywedete koordinata Mx: ";cin>>Mx;
   cout<<"Wywedete koordinata My: ";cin>>My;
   hip=Pitagor( Ox, Oy, Mx, My);
   Ycb=acos(R/hip);
   Lcb = Ycb*R;// Ycb/(2*pi) = Lcb/(2*pi*R)
   cout<<"Dylvina na dyga: "<<Lcb<<endl;
   cout<<"She wywevdate li drugi danni <y/n>: ";cin>>ose;
 } while (ose=='y'); 
  system("pause");
  return 0;
}//kraj na programa dyga

Начало на страницата

октатна дъга - правоъгълник със заоблен връх, заменен с дъга

Имате правоъгълен контур със зададени прилежащи страни. всеки от ръбовете на контура е заоблен, т.е. всички външни ъгли са заместени с дъги, при това с еднакви радиуси. Да се състави програма, която по въведени страни и радиус - извежда периметър и лице на новообразувания контур. Пример: при стени 4,5; радиус 1; Изход: P = 13.14; S = 19.14

Алгоритъм:

Октатна дъга е дъга, чийто централен ъгъл е с рамене съвпадащи или успоредни на координатните оси. Тук разглеждаме квадрат със страна радиуса на закръгление, от който остава само кръгов сектор, т.е. краищата му са дъга с централен ъгъл 90 градуса.

Следващата примерна програма дава решена задача за октатна дъга:
#include<iostream>
using namespace std;

int main()
{  int a,b,r;
 double s,p,r1,pi=3.1415925;
 cout <<"Imate prawoygylen kontur sys zadadeni prilevashi strani.\n";
 cout <<"Wseki ot rybowete na kontura e zaoblen, t.e. wsichki wynshni\n";
 cout <<"ygli sa zamesteni s dygi, pri towa s ednakwi radiusi.\n";
 cout <<"Da se systawi programa, koqto po wyweden radius i strani da \n";
 cout <<"izwevda perimetyr i lice na nowoobrazuwaniq kontur.\n";
 cout <<"Primer: radius 1; strani 4,5; Izhod: P=13.14  S=19.14 \n";
 cout <<"Wywedete razmer za radius na zakryglenie: ";cin >>r;
 cout <<"Wywedete dylvina na pyrwata strana >"<<2*r<<": ";cin >>a;
 cout <<"Wywedete dylvina na wtorata strana >"<<2*r<<": ";cin >>b;
//dygyte tangirat kym wsqka ot stranite i dylvinata im e 1/4 ot okryvnostta
//ot wsqka strana se maha 2* dylvinata na radiusa
 p=2*a + 2*b - 8*r + pi*r ;
 s=a*b-4*r*r;//wse edno, che sme otrqzali ne dyga a kwadrat sys strana radiusa
 r1=0.25*pi*r*r;//liceto na ostawashata dyga s ygyl 90 gradusa
 s+=4*r1;
 cout<<"Perimetyr na nowoobrazuwaniq kontur: "<<p<<" plosh: "<<s<<endl;
system("pause");
return 0;
}//kraj na programa dyga 

Начало на страницата

ъгъл на дъга между две допирателни

Имаме окръжност и две точки от нея A,B. През точките са прекарани допирателни, пресичащи се в точка Q, под ъгъл YG. Търсим централния ъгъл на дъга AB. Ъгълът на пресичане е даден в градуси.

ъгъл на дъга между две допирателни Алгоритъм:
Означаваме с O центъра на окръжността.
Разглеждаме двата правоъгълни триъгълника OAQ, OBQ.
Правоъгълни триъгълници, т.к. QA, QB са допирателни към окръжността.
OA=OB=R - радиус на окръжността. OQ обща страна на двата триъгълника.
ъгъл AOQ=BOQ=90 - YG/2, ъгълът на дъга AB = 2* AOQ=180-YG
Следващата примерна програма дава решена задача за ъгъл на дъга между две допирателни:
#include<iostream>
#include <cmath>
using namespace std;

int main()
{double YG, AB;
  char ose;
  cout<<"Ot tochka Q sa prekrani dwe dopiratelni kym okryvnost s centyr O.\n";
  cout<<"Dwete dopiratelni tangirat do okryvnostta w tochkite A i B. \n";
  cout<<"Wyweden e ygylyt AQB. Tyrsim centralniq ygyl na dyga AB.\n";
  cout<<"Ygyl AQB e wyweden w gradusi.\n";
  cout<<"Primer: 120 Izhod: 60\n";
  do {
    cout<<"Wywedete ygyl mevdu dopiratelnite: ";cin>>YG;
    AB=180-YG;
    cout<<"Centralniqt ygyl na tazi dyga e: "<<AB<<endl;
    cout<<"She wywevdate li drugi danni <y/n>: ";cin>>ose;
  } while (ose=='y');
 system("pause");
 return 0;
}//kraj na programa dyga 

Начало на страницата

централен ъгъл на дъга и отстояние на хорда

Дадена е дъга AB от окръжност. Въведени са данни за централния ъгъл на дъга - YG и отстоянието на хордата й до центъра на окръжността. Ъгълът на дъгата е въведен в градуси. Търсим диаметъра на тази окръжност.

централен ъгъл на дъга и отстояние на хорда

Алгоритъм:

Имаме равнобедрен триъгълник AOB с бедра OA, OB - радиуса на окръжността, ъгъл срещу основата AOB - половината от централния ъгъл на дъгата и височина към основата h - отстоянието на хордата до центъра на окръжността. Върхът O срещу основата съвпада с центъра на същата окръжност. Височината h към основата равнобедрен триъгълник е едновременно ъглополовяща и медиана. Тази височина разделя триъгълника на два еднакви правоъгълни триъгълници, като хипотенузата в тях е бедрото на основния триъгълник. Знаем ъгъл при върха, и единия катет. Радиусът на окръжността се явява хипотенуза на този триъгълник r=h/cos(0.5*YG). Изчисленият диаметър на тази окръжност е: D=2*r.

Следващата примерна програма дава решена задача за централен ъгъл на дъга и отстояние на хорда:
#include<iostream>
#include <cmath>
using namespace std;

double const pi=3.141592;
int main()
{double a,YG, h, Diam;
  char ose;
   cout<<"W okryvnost s centyr O ima dyga AB. Wywedeni sa danni za\n";*
   cout<<"centralniq ygyl AOB, kakto i razstoqnieto na centyra O do\n";
   cout<<"hordata j AB. Tyrsim diametyra na okryvnostta.\n";
   cout<<"Centralniqt ygyl na dyga AB e wyweden w gradusi.\n";
   cout<<"Primer: 90, 5 Izhod: 14.1421\n";
   do {
    cout<<"Wywedete ygyl na dyga: ";cin>>a;
    YG=a*pi/180;//preobrazuwane ygyl ot gradusi w radian
    cout<<"Wywedete razstoqnieto mevdu hordata i centyra: ";cin>>h;
    Diam=2* h/cos(0.5*YG);
    cout<<"Diametyr na okryvnostta: "<<Diam<<endl;
    cout<<"She wywevdate li drugi danni <y/n>: ";cin>>ose;
  } while (ose=='y');
 system("pause");
 return 0;
}//kraj na programa dyga 

Обяснени и решени задачи с подобни алгоритми, функции и служебни думи са разгледани в страницата с електронни уроци по информатика - програмиране.
Илюстриране работата на характерни алгоритми можете да намерите в предоставените електронни помагала съдържащи решени задачи, примери.

Начало на страницата

 
Размер на шрифта
Increase Font Size Option 3 Reset Font Size Option 3 Decrease Font Size Option 3
Bulgarian Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish
Търсене в сайта: