Advertisement
iamakulov

Untitled

Nov 6th, 2013
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.83 KB | None | 0 0
  1. //2.Определить среднее геометрическое элементов массива, а затем определить элемент,
  2. //который в наименьшей степени отличается от среднего геометрического и по значению не превосходит его.
  3. #include<stdio.h>
  4. #include<math.h>
  5.  
  6. int main()
  7. {
  8.     int i,n,imin;
  9.     double x[20], pr, min;
  10.     //Подключение кирилицы в консольном окне
  11.     //SetFont()
  12.     //Для вывода русского наводим курсор на заголовок консольного окна,
  13.     //правой кнопкой мыши вызываем меню - свойства - установить шрифт Lucida Concole
  14.     printf("\t Введите размер массива <=20\n");
  15.     scanf("%d",&n);
  16.     printf("\t Введите элементы массива \n");
  17.     for(i=0; i<n;i++)
  18.         scanf("%lf",&x[i]);
  19.     printf("Исходный массив х размером %d\n",n);
  20.     for(i=0; i<n;i++)
  21.         printf("%8.2lf",x[i]);
  22.     pr=1;
  23.     for(i=0; i<n;i++)
  24.         pr=pr*x[i];
  25.     pr=pow(fabs(pr),1./n);
  26.     printf("\nСреднее геометрическое = %8.2lf\n",pr);
  27.     imin = -1;
  28.     min = 0;
  29.     for (i = 0; i < n; ++i) {
  30.         if (x[i] < pr) {
  31.             imin = i;
  32.             min = fabs(x[i] - pr);
  33.         }
  34.        
  35.         if (imin != -1 &&
  36.                 fabs(x[i] - pr) < min &&
  37.                 x[i] < pr) {
  38.             imin = i;
  39.             min = fabs(x[i] - pr);
  40.         }
  41.     }
  42.         printf("\nЭлемент массива х[%d]=%lf отличается в наименьшей степени\
  43.            \n от среднего геометрического на величину = %8.2lf и меньше среднего\n",imin,x[imin],min);
  44.     printf("\nДля завершения программы нажмите любую клавишу\n");
  45.     return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement