Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- void input(int *n, int *m, int (*a)[20]) {
- int i, j;
- cout << "Write n:\n";
- cin >> *n;
- cout << "Write m:\n";
- cin >> *m;
- cout << "Write array a[][]:\n";
- for (i = 0; i < *n; i++)
- for (j = 0; j < *m; j++)
- cin >> a[i][j];
- return;
- }
- void func(int n, int m, int (*a)[20], int *u1, int *u2) {
- int i, j, t;
- for (*u1 = *u2 = -1, i = 0; i < n; i++)
- for (j = 0; j < m; j++)
- if (a[i][j] % 2)
- if (*u1 == -1)
- *u1 = i * 20 + j;
- else if (*u2 == -1)
- *u2 = i * 20 + j;
- else {
- t = *u1;
- *u1 = i * 20 + j;
- *u2 = t;
- }
- return;
- }
- void output(int n, int m, int a[20][20], int u1, int u2) {
- int i, j, c;
- c = a[u1 / 20][u1 % 20];
- a[u1 / 20][u1 % 20] = a[u2 / 20][u2 % 20];
- a[u2 / 20][u2 % 20] = c;
- cout << "New array:\n";
- for (i = 0; i < n; i++) {
- for (j = 0; j < m; j++)
- cout << a[i][j] << ' ';
- cout << endl;
- }
- }
- int main() {
- int a[20][20], u1, u2, t, n, m, c, i, j;
- input(&n, &m, a);
- func(n, m, a, &u1, &u2);
- if(u2 == -1 || u1 == u2)
- cout << "No swap\n";
- else
- output(n, m, a, u1, u2);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement