Приложение. Листинг программы
Код
программы:
#include
<stdio.h>
#include
<conio.h>
#include
<math.h>
int
main()
{
int
n;
//Ввод
n
printf("Enter
n: ");
scanf("%i",&n);
double
x[n],p[n];
//Ввод
x и
p
for(int
i=0;i<n;i++)
{
printf("Enter
x[%i] and p[%i]: ",i+1,i+1);
scanf("%lf
%lf",&x[i],&p[i]);
}
//Вычисляем
центр тяжести по формуле
(x1*p1+x2*p2+...+xn*pn)/(p1+p2+...+pn)
double
X=0,sumP=0;
for(int
i=0; i<n; i++)
X=X+x[i]*p[i];
for(int
i=0; i<n; i++)
sumP=sumP+p[i];
X=X/sumP;//Центр
тяжести
int
number=0;//Считаем, что нулевая точка самая
ближняя
for(int
i=0;i<n;i++)
if
(fabs(x[i]-X) < fabs(x[number]-X))//Если новое расстояние
меньше того, что мы уже имеем - заменяем
number
= i;
number++;
//Итого,
в переменной number находится номер точки,
расстояние от которой до центра тяжести
минимальное
//Выводим
результат
printf("Point:
%i",number);
getch();
return
0;
}