Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа (вер 1 без бока).docx
Скачиваний:
6
Добавлен:
08.08.2019
Размер:
138.65 Кб
Скачать

Приложение. Листинг программы

Код программы:

#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;

}