Informatică, întrebare adresată de Elenaane, 8 ani în urmă

Cerința
Pe un câmp orizontal se află doi stâlpi perpendiculari pe sol în punctele A și B. În vârful fiecărui stâlp se află o pasăre de pradă. Pe dreapta d determinată de punctele A si B apare un șoarece în punctul C. Cele două păsări zboară spre șoarece în linie dreaptă cu aceeași viteză.

Cunoscând HA = înălțimea primului stâlp, HB = înălțimea celui de-al doilea stâlp, D = distanța dintre cei doi stâlpi, să se afle distanța X dintre șoarece și baza stâlpului mai înalt astfel încât păsările să ajungă la șoarece în același timp și să-l împartă frățește.

prada1

Date de intrare
Programul citește de la tastatură numerele naturale HA, HB și D.

Date de ieșire
Programul va afișa pe ecran numărul X, reprezentând distanța dintre șoarece și baza stâlpului mai înalt astfel încât păsările să ajungă la șoarece în același timp și să-l împartă frățește.

Restricții și precizări
Se garantează că HA, HB, D, X sunt naturale si mai mici sau egale cu 1000



Exemplu
Intrare

30 20 50
Ieșire

20
prada2

Explicație
Se va calcula X = AC = 20.


MihaiR32: An ce limbaj?
Elenaane: C++
boiustef: e de pe pbinfo... ce numar sau nume?
Elenaane: Da,#2782
Elenaane: Mi o poti face?

Răspunsuri la întrebare

Răspuns de boiustef
12

#include <iostream>

using namespace std;

int main()

{

   int HA, HB, D, X;

   cin >> HA >> HB >> D;

   if (HA==HB) X=D/2;

   else

   {

       if (HA>HB) X=(D*D+HB*HB-HA*HA)/(2*D);

       else X=(D*D+HA*HA-HB*HB)/(2*D);

   }

   if (X<0) X=-X;

   cout << X;

   return 0;

}


Elenaane: Nu merge
boiustef: adica?
boiustef: am luat-o, proaspat, de pe pbinfo...
boiustef: la copiere de aici apar niste spatii pe care tr sa le stergi..., in randul in care arata eroare sterge spatiile din fata si plaseaza iara linia unde vrei
Elenaane: ok
Alte întrebări interesante