IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным. В описании темы указываем язык!!!

> Найти в массиве элемент, наиболее близкий к среднему арифметическому суммы его элементов, Помогите найти ошибку
Shmaniche
сообщение 27.05.2012 11:01
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 79
Пол: Мужской

Репутация: -  0  +


 
#include <stdio.h> 
#include <conio.h>
#include <math.h>

int main()
{     
 int i, j; 
 float mas[5];
 float sum_mas, sr_arif, razn1, razn2; 

 printf("Vvedite massiv iz 5 elementov \n:");
  for (i=0; i<5; i++) 
   { printf("Vvedite element[%d]: ", i); 
     scanf("%f", &mas[i]); } 

  for(i=0 ; i<5 ; i++) 
  {
   sum_mas += mas[i]; // Сумма элементов массива.
   sr_arif = sum_mas / 5; // Сумма элементов массива деленая на кол-во элементов = Ср. ариф.   
  }
  
 razn1 = mas[0]-sr_arif; // Из первого элемента массива вычитаем среднее ариф-ое, получаем разницу1.
 razn2 = mas[i]-sr_arif; // Из каждого элемента массива вычитаем среднее ариф-ое, получаем разницу2.
 j=0 ; // Обнуляем переменную.
  for (i = 1 ; i<10 ; i++) 
  { 
   if( fabs(razn1) > fabs(razn2)) // Если модуль разницы1 больше модуля разницы2, то...
    { j=i; // элемент массива вводим в новую переменную и...
      razn1 = razn2; } // разницу1 приравниваем к разнице2.     
  }  

  printf ("\n Srednee arifmechicheskoe: %3.3f", sr_arif); // Вывести среднее арифм-ое с оукруглением.
  printf ("\n Naibolee blizkoe znachenie: %3.3f", mas[j]); // Вывести наиболее близкое значение. 
 getch(); // Ожидать нажатия любой клавиши.
 return 0; // Вернуть 0 функции int main().
}



1 элем: 1
2 элем: 5
3 элем: 4
4 элем: 3
5 элем: 3
Ср. Ариф: 3.200
Наиболее близкий: 1.000.
Тоже неверно, думаю наиболее близкий 3.000, либо может быть и 4.000.

9
8
7
6
5
Ср. Ариф: 7.000
Наиболее близкий: 9.000.
Почему 9, когда наиболее близкое значение еще м.б. 8.000.

Как можно исправить?

PS: В условии что имеется ввиду под наиболее близким элементом? В меньшую сторону от ср. арифм. или в большую?

Сообщение отредактировано: Shmaniche - 27.05.2012 11:03
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 31.07.2025 2:36
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"