Pagini recente » Cod sursa (job #2220082) | Cod sursa (job #321416) | Cod sursa (job #198723) | Arhiva Educationala | Cod sursa (job #2727172)
#include <iostream>
#include <iomanip>
#include <cmath>
#include <fstream>
using namespace std;
ifstream f("cmap.in");
ofstream g("cmap.out");
struct punct
{
int abscisa,ordonata;
} puncte[100001];
long double distanta,distanta_min=2e9;
punct sol1,sol2;
int n;
int main()
{
f>>n;
for(int i=0; i<n; i++)
f>>puncte[i].abscisa>>puncte[i].ordonata; //citim coordonatele celor n puncte
for(int i=0; i<n; i++) //calculam lungimea tutror dreptelor posibile
for(int j=i+1; j<n; j++)
{
distanta=sqrt((puncte[i].abscisa-puncte[j].abscisa)*(puncte[i].abscisa-puncte[j].abscisa)+
(puncte[i].ordonata-puncte[j].ordonata)*(puncte[i].ordonata-puncte[j].ordonata));
//calcularea distantei dintre doua puncte dupa formula d(A,B)=sqrt((xA-xB)*(xA-xB)+(yA-yB)*(yA-yB));
if(distanta_min>distanta)
{
distanta_min=distanta;
sol1=puncte[i];
sol2=puncte[j];
}
}
g<<distanta_min;
return 0;
}