Text: |
ФІО = Горбаченко В.А.
Запитання:/*
1) ввести с клавиатуры n элементов массива, распределить память
для его размещения и ввести int значения этого массива. После
этого подсчитать среднее арифметическое элементов и среднее
геометрическое модулей элементов массива. Это всё
нужно написать, стараясь максимально всё вынести за
main (соблюдать модульность).
*/
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
using namespace std;
void EnterMas(int *m,int n){
// функция принимает указатель на первый елемент масива *m и размерность n
// функция заполняет масив int m размерностью n
for (int i=0 ; i < n ; i++)
{
cout<<"Enter m[ "<<i<<" ] = ";
cin>>(*(m+i));
}
}
void PrintMas(int *m,int n){
// принимает аналогичнчно к ^^
// выводит масив на экран
for (int i=0 ; i < n ; i++)
{
cout<<"Enter m[ "<<i<<" ] = "<<*(m+i)<<"\n";
}
}
double float_srar(int *m,int n){
// функция возвращает среднее арифметическое
double sum=0;
for (int i=0 ; i < n ; i++)
{
sum+=*(m+i);
}
return sum/n;
}
double float_srgeom(int *m,int n){
// функция возвращает среднее геометрическое
double sum=1;
for (int i=0 ; i < n ; i++)
{
sum*=*(m+i);
}
return sum/n;
}
int main(){
int n;
// вводим размерность масива
cout<<"Enter N = ";
cin>>n;
// создаем динамический масив (одномерный) размерностью n
int *m=new int[n];
// вводим масив
EnterMas(m,n);
cout<<endl;
// выводим масив на экран
PrintMas(m,n);
// Выводим результаты
cout<<" SER AR = "<<float_srar(m,n)<<endl;
cout<<" SER GEOM = "<<float_srgeom(m,n)<<endl;
// освобождаем память
delete(m);
system("PAUSE");
}
====================================
|