Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/22: Рейтинг темы: голосов - 22, средняя оценка - 4.73
 Аватар для Defaillance
0 / 0 / 0
Регистрация: 23.09.2012
Сообщений: 16

Программа для вычисления среднего арифметического и геометрического массива чисел

04.12.2012, 21:28. Показов 4631. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что-то написала, но программа неправильно считает
Исправьте меня, пожалуйста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include<iostream>
#include<math.h>
using namespace std;
 
int main()
{ int n;
 cout<<"Input the number of values: ";
    cin>>n;
  float *mas = new float[n];
    cout<<"Input massiv: ";
 
    cin>>mas[n];
   float sum=0;
   float product=0;
   float a_mean;
   float g_mean;
        for(int i=0;i<n;++i)
      { 
          sum=sum+mas[i];
      product=product*mas[i];
        }
 
   a_mean = sum/n;
   g_mean = pow(product,1/n);
   delete[]mas;
   cout<<"A_mean: "<<a_mean<<endl;
   cout<<"G_mean: "<<g_mean<<endl;
   system("PAUSE");
   return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.12.2012, 21:28
Ответы с готовыми решениями:

Функция вычисления среднего арифметического и среднего геометрического двух чисел
Описать функцию Mean(X, Y, AMean, GMean), вычисляющую среднее арифметическое AMean = (X+Y)/2 и среднее геометрическое GMean = (X·Y)1/2 двух...

программа для вычисления среднего геометрического элементов массива array[15] удовлетворяющих условию
Вот моя программа для вычисления среднего геометрического элементов массива array удовлетворяющих условию 5&lt;=array&lt;=15. Вроде всё...

Программа для заполнения массива ГСЧ и вычисления среднего арифметического значения в заданном диапазоне
Привет. Нужно заполнить двумерный массив MxN случайными числами в диапазоне с помощью ГСЧ, а потом посчитать среднее арифметическое...

14
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
04.12.2012, 21:42
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include<iostream>
#include<math.h>
using namespace std;
 
int main()
{ 
    int n;
    cout<<"Input the number of values: ";
    cin>>n;
    float *mas = new float[n];
    cout<<"Input massiv: ";
    for(int i = 0; i < n; i++) {
        cin>>mas[i];
    }
 
    float sum=0;
    float product= 1;
    float a_mean;
    float g_mean;
    
    for(int i=0;i<n;++i)
    {
        sum += mas[i];
        product *= mas[i];
    }
 
   a_mean = sum/n;
   g_mean = pow(product, 1.0f / n);
   delete[]mas;
   cout<<"A_mean: "<<a_mean<<endl;
   cout<<"G_mean: "<<g_mean<<endl;
   system("PAUSE");
   return 0;
}
1
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
04.12.2012, 21:42
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include<iostream>
#include<math.h>
using namespace std;
 
int main()
{ 
    int n;
    
    cout<<"Input the number of values: ";
    cin>>n;
    
    float *mas = new float[n];
  
    cout<<"Input massiv: ";
        for (int i=0; i<n; i++)
            cin >> mas[i];
            
    float sum=0;
    float product=1;
   
    float a_mean;
    float g_mean;
    
    for(int i=0;i<n;++i)
    { 
        sum=sum+mas[i];
        product=product*mas[i];
    }
 
    a_mean = sum/n;
    g_mean = pow(product, 1.0/n);
   
    delete[]mas;
   
    cout<<"A_mean: "<<a_mean<<endl;
    cout<<"G_mean: "<<g_mean<<endl;
   
    system("PAUSE");
    return 0;
}
0
 Аватар для Mr.kto
104 / 105 / 18
Регистрация: 18.08.2012
Сообщений: 308
04.12.2012, 21:46
Defaillance,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include<iostream>
#include<math.h>
using namespace std;
 
int main()
{ 
    int n;
    cout<<"Input the number of values: ";
    cin>>n;
    float *mas = new float[n];
    for (int i = 0; i < n; i++)
    {
            cout<<"Input massiv: ";
            cin>>mas[i];
    }
    float sum=0, product=0, a_mean, g_mean;
    for(int i=0;i<n;++i)
    { 
        sum+=mas[i];
        product*=mas[i];
    }
    a_mean = sum/n;
    g_mean = pow(product,1/n);
    delete[]mas;
    cout<<"A_mean: "<<a_mean<<endl;
    cout<<"G_mean: "<<g_mean<<endl;
    system("PAUSE");
    return 0;
}
Добавлено через 1 минуту
Что та долго я страничку не обновлял, уже ответы есть =)
0
 Аватар для Defaillance
0 / 0 / 0
Регистрация: 23.09.2012
Сообщений: 16
04.12.2012, 21:55  [ТС]
Цитата Сообщение от .::.DIMA.::. Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include<iostream>
#include<math.h>
using namespace std;
 
int main()
{ 
    int n;
    cout<<"Input the number of values: ";
    cin>>n;
    float *mas = new float[n];
    cout<<"Input massiv: ";
    for(int i = 0; i < n; i++) {
        cin>>mas[i];
    }
 
    float sum=0;
    float product= 1;
    float a_mean;
    float g_mean;
    
    for(int i=0;i<n;++i)
    {
        sum += mas[i];
        product *= mas[i];
    }
 
   a_mean = sum/n;
   g_mean = pow(product, 1.0f / n);
   delete[]mas;
   cout<<"A_mean: "<<a_mean<<endl;
   cout<<"G_mean: "<<g_mean<<endl;
   system("PAUSE");
   return 0;
}
Спасибо огромнейшее, ваш вариант нормально работает
Но простите, что значит "1.0f"?)
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
04.12.2012, 21:58
Цитата Сообщение от Defaillance Посмотреть сообщение
Спасибо огромнейшее, ваш вариант нормально работает
Но простите, что значит "1.0f"?)
Изначально 1.0 имеет тип Double. 1.0f - Float.
В качестве аналога можете использовать
C++
1
(float)1.0
1
 Аватар для Mr.kto
104 / 105 / 18
Регистрация: 18.08.2012
Сообщений: 308
04.12.2012, 22:11
Цитата Сообщение от Defaillance Посмотреть сообщение
Спасибо огромнейшее, ваш вариант нормально работает
а у всех остальных отСтой =)
0
 Аватар для Defaillance
0 / 0 / 0
Регистрация: 23.09.2012
Сообщений: 16
04.12.2012, 22:24  [ТС]
Цитата Сообщение от Mr.kto Посмотреть сообщение
а у всех остальных отСтой =)
Ошибки компилятор выдавал)

Добавлено через 8 минут
Цитата Сообщение от Mr.kto Посмотреть сообщение
а у всех остальных отСтой =)
А вы не знаете, как втулить этот код в функцию?
Всё тоже самое, только в функцию
Типа перед int main написать void function и как-то дальше)
0
 Аватар для Mr.kto
104 / 105 / 18
Регистрация: 18.08.2012
Сообщений: 308
04.12.2012, 22:29
Цитата Сообщение от Defaillance Посмотреть сообщение
А вы не знаете, как втулить этот код в функцию?
Всё тоже самое, только в функцию
Типа перед int main написать void function и как-то дальше)
знаю щас напишу)
1
1 / 1 / 1
Регистрация: 04.12.2012
Сообщений: 27
04.12.2012, 22:32
Извините, что прерываю вас, помогите, пож-та, решить эту задачу (там используется ср. арифметич.):
Задана последовательность X = (x1, x2, …, x10).
Сформировать из неё одномерный массив Y, состоящий из элементов, удовлетворяющих условию X(i) <= A - X(5), где A - среднеарифметическое значение элементов массива X. Если таковых не окажется, вывести фразу «Искомых элементов нет». Полученный массив напечатать в строчку.
X = {0, -22.4, 5.2, -2.25, 7.92, 0.24, -0.21, 15.8, 9.1, 3.2}.
0
 Аватар для Mr.kto
104 / 105 / 18
Регистрация: 18.08.2012
Сообщений: 308
04.12.2012, 22:35
Defaillance,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include<iostream>
#include<math.h>
using namespace std;
 
void function(float *arr, int size)
{
    float sum=0, product=0, a_mean, g_mean;
    for(int i=0;i<size;++i)
    { 
        sum+=arr[i];
        product*=arr[i];
    }
    a_mean = sum/size;
    g_mean = pow(product,1/size);
    cout<<"A_mean: "<<a_mean<<endl;
    cout<<"G_mean: "<<g_mean<<endl;
}
 
int main()
{ 
    int n;
    cout<<"Input the number of values: ";
    cin>>n;
    float *mas = new float[n];
    for (int i = 0; i < n; i++)
    {
            cout<<"Input massiv: ";
            cin>>mas[i];
    }
    function(mas,n);
        delete[]mas;
    system("PAUSE");
    return 0;
}
вот так как то))
0
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
04.12.2012, 22:41
Цитата Сообщение от Mr.kto Посмотреть сообщение
g_mean = pow(product,1/size);
Здесь неправильно. 1/size будет всегда ноль)
При делении двух целых чисел дробная часть отбрасывается
1
 Аватар для Mr.kto
104 / 105 / 18
Регистрация: 18.08.2012
Сообщений: 308
04.12.2012, 22:51
поправочка, спасибо V.A.L.I.D
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include<iostream>
#include<math.h>
using namespace std;
 
void function(float *arr, int size)
{
    float sum=0, product=1, a_mean, g_mean;
    for(int i=0;i<size;++i)
    { 
        sum+=arr[i];
        product*=arr[i];
    }
    a_mean = sum/size;
    g_mean = pow(product,1.0f/size);
    cout<<"A_mean: "<<a_mean<<endl;
    cout<<"G_mean: "<<g_mean<<endl;
}
 
int main()
{ 
    int n;
    cout<<"Input the number of values: ";
    cin>>n;
    float *mas = new float[n];
    for (int i = 0; i < n; i++)
    {
            cout<<"Input massiv: ";
            cin>>mas[i];
    }
    function(mas,n);
        delete[]mas;
    system("PAUSE");
    return 0;
}
1
1 / 1 / 1
Регистрация: 04.12.2012
Сообщений: 27
04.12.2012, 23:17
Извините, что прерываю вас, помогите, пож-та, решить эту задачу (там используется ср. арифметич.):
Задана последовательность X = (x1, x2, …, x10).
Сформировать из неё одномерный массив Y, состоящий из элементов, удовлетворяющих условию X(i) <= A - X(5), где A - среднеарифметическое значение элементов массива X. Если таковых не окажется, вывести фразу «Искомых элементов нет». Полученный массив напечатать в строчку.
X = {0, -22.4, 5.2, -2.25, 7.92, 0.24, -0.21, 15.8, 9.1, 3.2}.
я так сделал (здесь где-то ошибка, так как после ввода 10-ого элемента приходится ещё вводить 1 элемент, и только после этого формируется новый массив):
Где тут ошибка?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream.h>
#include <math.h>
int main ()
{ 
    const int n=10;
    int i,k;
    double x[n], y[n],a,sum;
    sum=0;  
    cout <<"\n Vvedite elementi massiva X\n";
    for(i=0; i<=n; i++)
        cin>>x[i];
    for(i=0; i<=n; i++)
        cout<<x[i]<<"  ";
    for(i=0; i<=n; i++)
     {
        sum = sum+x[i];
     }        
     a = sum/n;
     cout<<"\na="<<a;
     k=0;
     for (i=0; i<=n; i++) 
      if (x[i]<=a-x[5])
     { 
        y[k] = x[i]; k=k+1;
     }
    if ( k=0 ) cout<<"Ishodnih elementov net "; 
    else cout <<"Sformirovanniy massiv"; 
    for(k=0; k<=n; k++) 
    cout<<"\ny[k]="<<y[k];
    return 0;
}
0
 Аватар для Mr.kto
104 / 105 / 18
Регистрация: 18.08.2012
Сообщений: 308
04.12.2012, 23:40
Gazovik7,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream.h>
#include <math.h>
#include <conio.h>
 
int main ()
{ 
    const int n=10;
    int k=0;
    double x[n], y[n],a=0,sum=0;    
    cout <<"\n Vvedite elementi massiva X\n";
    for(int i=0; i<n; i++)
        cin>>x[i];
    for(int i=0; i<n; i++)
        cout<<x[i]<<" ";
    for(int i=0; i<n; i++)
        sum += x[i];
    a = sum/n;
    cout<<"\na="<<a;
    for (int i=0; i<n; i++) 
        if (x[i]<=a-x[5])
        { 
            y[k] = x[i]; 
            k++;
        }
    if ( k==0 ) 
        cout<<" Ishodnih elementov net "; 
    else 
        cout <<" Sformirovanniy massiv "; 
    for(int i=0;i<k;i++) 
        cout<<"\ny[k]= "<<y[i];
    getch();
    return 0;
}
результат
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.12.2012, 23:40
Помогаю со студенческими работами здесь

Вычисление среднего арифметического и среднего геометрического двух чисел
Даны два действительных положительных числа. Записать алгоритм вычисления среднего арифметического и среднего геометрического этих чисел.

Разработайте перегруженные функции нахождения среднего арифметического и среднего геометрического трех целых и вещественных чисел
Составьте программу для решения задачи. Выясните, что больше: среднее арифметическое или среднее геометрическое трех положительных чисел....

Составить процедуру вычисления среднего арифметического и среднего геометрического А и В
Составить процедуру вычисления среднего арифметического и среднего геометрического А и В. С ее помощью найти среднее арифметическое и...

Нужна программа для вычисления среднего арифметического трех чисел
И что куда, собственно говоря?

Для массива найти значения среднего арифметического, геометрического, гармонического, квадратического
в общем суть задания: для массива a найти значения среднего арифметического, геометрического, гармонического, квадратического. Проблума...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru