@Lana937
1 / 1 / 0
Регистрация: 28.10.2010
Сообщений: 46
|
|
|
30.03.2011, 16:45. Просмотров 267. Ответов 0
Задать пункты решенного варианта в виде функций. 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
41
42
43
44
45
46
47
48
49
50
51
52
53
| #include <iostream>
#include <iomanip> // для манипулятора setw()
using namespace std;
const int m=3, n=3;
void output(int [m][n]);
void qq(){cout<<"----------------------------------------------"<<endl;};
int main()
{
setlocale (LC_ALL,".1251");
int j, i, k, bufer, z[m*n];
int x[m][n]={{1,2,3},{4,5,6},{7,8,9}};
cout<<"Исходный массив X "<<endl; output(x);
k=0;
for(i=0;i<m;i++)
{ for(j=0;j<n;j++) {z[k]=x[i][j]; k++;} };
for(i=0;i<(m*n);i++)
{ for(j=0;j<(m*n);j++) {if(z[j]<z[j+1]){bufer=z[j];z[j]=z[j+1];z[j+1]=bufer;}} }
k=0;
for(i=0;i<m;i++)
{ for(j=0;j<n;j++) {x[i][j]=z[k];k++;} };
cout<<"Упорядоченный массив X"<<endl; output(x);
for(j=0;j<n;j++) {bufer=x[j][j]; x[j][j]=x[0][j]; x[0][j]=bufer;};
cout<<"Новый массив X"<<endl; output(x);
p=0;
for(i=0; i<m; i++)
{ for (j=0; j<n; j++)
{ if(x[i][j]>0) { break;}
if(j==n) {p=i;}
}
if (p!=-1) {break;}
}
cout<<"nomer: "<<p<<endl;
system("PAUSE");
return 0;
}
void output(int x[m][n])
{ int i,j;
for(i=0;i<m;i++)
{for(j=0;j<n;j++){cout<<setw(5)<<x[i][j];};
cout<<endl;}
qq();
} |
|
Все необходимые данные должны передаваться для функции в качестве параметров. Использовать локальные переменные.
попробовала сделать, вышло вот что:
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| #include <iostream>
#include <iomanip> // для манипулятора setw()
using namespace std;
const int m=3, n=3;
void output(int [m][n]);
void qq(){cout<<"----------------------------------------------"<<endl;};
int main()
{
setlocale (LC_ALL,".1251");
int j, i, k, bufer, z[m*n];
int x[m][n]={{1,2,3},{4,5,6},{7,8,9}};
cout<<"Исходный массив X "<<endl; output(x);
}
void lin()
int k;
{
k=0;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++) {z[k]=x[i][j]; k++;}
};
for(i=0;i<(m*n);i++)
{
for(j=0;j<(m*n);j++) {if(z[j]<z[j+1]){bufer=z[j];z[j]=z[j+1];z[j+1]=bufer;}}
}
k=0;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++) {x[i][j]=z[k];k++;}
};
cout<<"Упорядоченный массив X"<<endl; output(x);
for(j=0;j<n;j++) {bufer=x[j][j]; x[j][j]=x[0][j]; x[0][j]=bufer;};
cout<<"Новый массив X"<<endl; output(x);
}
void diagonal()
{
int p,i,j;
p=0;
for(i=0; i<m; i++)
{
for (j=0; j<n; j++)
{ if(x[i][j]>0) { break;}
if(j==n) {p=i;}
}
if (p!=-1) {break;}
}
cout<<"nomer: "<<p<<endl;
return 0;}
} |
|
правильно ли??
0
|