Форум программистов, компьютерный форум CyberForum.ru

Английская мера длины - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
half-node
21 / 18 / 3
Регистрация: 12.08.2010
Сообщений: 206
16.08.2010, 01:24     Английская мера длины #1
Привет!
Мозг уже не хочет со мной работать.
Подскажите пожалуйста, как можно рассчитать среднее арифметическое английской меры длины.
Есть массив объектов distance, который содержит в себе поля
C++
1
int feet
и
C++
1
float inches
Если с суммой все понятно, то со средним арифметическим никак не могу разобраться.
Правильно ли будет по отдельности посчитать средние арифметические для полей feet и inches, а уже потом их "склеить"? >_<
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2010, 01:24     Английская мера длины
Посмотрите здесь:

C++ Слово максимальной длины заменить на слово минимальной длины
C++ поиск длины пути
В строке первого объекта класса слово MAX длины заменить на слово MAX длины второго объекта класса C++
Текстовый файл содержит строки – предложения разной длины. Записать их в выходной файл в порядке возрастания длины строки C++
Текстовый файл содержит строки – предложения разной длины. Записать их в выходной файл в порядке возрастания длины строки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rockedit
Автор FAQ
Автор FAQ
 Аватар для Rockedit
1752 / 558 / 9
Регистрация: 22.12.2009
Сообщений: 1,544
16.08.2010, 01:45     Английская мера длины #2
нет. возьмем к примеру 1 2 3 4 5 6 7 8. (1 + 2 + 3 + 4 + 5)/5 + (6 + 7 + 8)/3 != (1 + 2 + 3 + 4 + 5 + 6 + 7 + 8)/8 -> 10 != 4.5
Я могу быть не прав. может я просто неправильно понял задание.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
16.08.2010, 02:04     Английская мера длины #3
half-node, нужно к общей единице приводить, вычислять среднее арифметическое, а потом обратно на футы и дюймы разбивать исходя из того, что в одном футе 12 дюймов.
C
1
2
3
4
...
double average_inches = (sum_of_feets * 12.0 + sum_of_inches) / number_of_elements;
int average_feets = (int)(average_inches / 12);
average_inches -= (double)average_feets;
как-то так...
abiprofi
 Аватар для abiprofi
48 / 48 / 2
Регистрация: 04.08.2010
Сообщений: 110
16.08.2010, 02:09     Английская мера длины #4
1. Для каждого объекта необходимо получить длину в футах и дюймах (в дюйме 1/10 или 1/12 фута).
2. Сложить полученные длины - L
3. Посчитать количество объектов - Count
4. Вычислить среднее арифметическое. L/Count

Среднее арифметическое: http://ru.wikipedia.org/wiki/%D0%A1%...BA%D0%BE%D0%B5
Дюйм: http://ru.wikipedia.org/wiki/%22
half-node
21 / 18 / 3
Регистрация: 12.08.2010
Сообщений: 206
16.08.2010, 02:36  [ТС]     Английская мера длины #5
Цитата Сообщение от easybudda Посмотреть сообщение
half-node, нужно к общей единице приводить, вычислять среднее арифметическое, а потом обратно на футы и дюймы разбивать исходя из того, что в одном футе 12 дюймов.
C
1
2
3
4
...
double average_inches = (sum_of_feets * 12.0 + sum_of_inches) / number_of_elements;
int average_feets = (int)(average_inches / 12);
average_inches -= (double)average_feets;
как-то так...
easybudda, спасибо большое! Все гениальное - действительно просто. Пора мозгу отдохнуть, видимо. Спасибо еще раз.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
16.08.2010, 04:25     Английская мера длины #6
Цитата Сообщение от easybudda Посмотреть сообщение
average_inches -= (double)average_feets;
только вот это не правильно. правильно так:
C
1
average_inches -= average_feets * 12.0;
Yandex
Объявления
16.08.2010, 04:25     Английская мера длины
Ответ Создать тему
Опции темы

Текущее время: 05:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru