Επιφάνεια κύκλου από δύο σημεία, πρόγραμμα στη C++

Δίνονται δύο σημεία στα καρτεσιανό επίπεδο:

  • Το ένα σημείο είναι κέντρο κύκλου
  • Το άλλο σημείο βρίσκεται πάνω στην περιφέρεια του κύκλου

Θεωρούμε γνωστές τις συντεταγμένες των δύο σημείων. Να γράψετε ένα πρόγραμμα με συνάρτηση που να υπολογίζει το εμβαδόν του κύκλου.

Υπενθύμιση: από τη γεωμετρία είναι γνωστό πως το εμβαδόν είναι ανεξάρτητο από το ποιο από τα δύο σημεία είναι το κέντρο.

Για τον αριθμό π χρησιμοποιείστε τη σταθερά M_PI:

#include <math.h>     // must include
M_PI                  // value of pi=3.14159265358979323846

Μια προτεινόμενη λύση:

#include <iostream>
#include <math.h>

using namespace std;

float circle(float x0, float y0, float x1, float y1); 

int main()
{
    float s;
    float x0,y0,x1,y1;

    cout << "enter the center:" << endl;
    cin  >> x0;
    cin  >> y0;

    cout << "enter another point:" << endl;
    cin  >> x1;
    cin  >> y1;
  
    s = circle(x0,y0,x1,y1);  
 
    cout <<  "s= " << s << endl;      

    return 0; 
}

    
float circle(float x0, float y0, float x1, float y1)
{
    float  r, s;
    r = sqrt( pow((x0-x1),2) + pow((y0-y1),2) );
    s = M_PI * r*r;
    return s;
}

Συνδεθείτε για περισσότερες δυνατότητες αλληλεπίδρασης,
σχολιασμοί, εξωτερικοί σύνδεσμοι, βοήθεια, ψηφοφορίες, αρχεία, κτλ.

Creative Commons License
Εκπαιδευτικό υλικό από τον Αθανάσιο Σταυρακούδη σας παρέχετε κάτω από την άδεια Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License.
Σας παρακαλώ να ενημερωθείτε για κάποιους επιπλέον περιορισμούς
http://stavrakoudis.econ.uoi.gr/stavrakoudis/?iid=401.