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
| float calc_y_(int a[n][n])
{
float y=0;
int i, min, max;
min=a[0][0];
for(i=0; i<n; i++)
{
if(min>a[i][i]) min=a[i][i];
}
max=a[0][0];
for(i=0; i<n; i++)
{
if(max<a[i][i]) max=a[i][i];
}
y=(float)(min+max)/2;
return y;
}
Также 2 рекурсии которые находят среднее арифметическое (но не как в условии).
float rec_mas(int a[n][n],int i,int j, float k)
{
if(j==n-1) return (float)(k+a[i][j])/(j+1);
else {
k=k+a[i][j];
return rec_mas(a,i,j+1,k);
}
}
float recurs(int a[n][n], int i, int j, float s)
{
if (i==n-1){
s=s+rec_mas(a,i,0,0);
return s/(i+1);
}
else {
s=s+rec_mas(a,i,0,0);
return recurs(a,i+1,j,s);
} |