Untitled
unknown
c_cpp
4 years ago
2.0 kB
11
Indexable
#include <iostream>
using namespace std;
void func1(float *mass, int &peri, int &posi, float &s, float &k){ //ф-ия для среднего арифметического//
for (int i=0; i<10; i++){
if (mass[i]==0){
peri=i;
break;
}
}
for (int i=9; i>=0; i--){
if (mass[i]==0){
posi=i;
break;
}
}
for (int i=0; i<peri; i++){
s+=mass[i];
k+=1;
}
for (int i = posi+1; i<10; i++){
s+=mass[i];
k+=1;
}
}
void func2(float *mass, float &max, float &min, int &maxi, int &mini){ //ф-ия для перемены минимальных и максимальных//
for (int i=0; i<10; i++){
if (mass[i]>max){
max=mass[i];
maxi=i;
}
if (mass[i]<min){
min=mass[i];
mini=i;
}
}
}
int main(){
bool proverka_na_nol = false;
float *arr = new float[10];
for (int i=0; i<10; i++){
cout<<"arr["<<i<<"] = ";
cin>>arr[i];
}
for (int i=0; i<10; i++){
if (arr[i] == 0){
proverka_na_nol = true;
}
}
if (proverka_na_nol)
{
int peri, posi, maxi, mini = 0;
float s, k = 0, max, min = arr[0];
func1(arr, peri, posi, s, k);
func2(arr, max, min, maxi, mini);
cout<<"s = "<<s<<" , k = "<<k<<" ,ср.ар. = "<<s/k<<endl;
cout<<"max = "<<max<<" maxi = "<<maxi;
cout<<" min = "<<min<<" mini = "<<mini<<endl;
float c;
c=arr[0];
arr[0]=max;
arr[maxi]=c;
c=arr[9];
arr[9]=min;
arr[mini]=c;
for(int i = 0; i<10; i++){
cout<<"arr["<<i<<"] = "<<arr[i]<<endl;
}
delete []arr;
}
else
{
cout << "В массиве не обнаружен ноль.\nКОНЕЦ!!!";
}
return 0;
}
Editor is loading...