Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- int main()
- {
- int sluchay = 1, a = 10, b = 10, A[a][b], B[a][b], min, max, s, i, j;
- if(sluchay == 1)
- {
- for (i = 0; i < a; i++)
- {
- for (j = 0; j < b; j++)
- {
- A[i][j] = i * i - j * j;
- printf ("%d ", A[i][j]);
- }
- printf ("\n");
- }
- int *pa;
- pa = &A[0][0];
- f(pa, a, b, &s, &min, &max);
- }
- else
- {
- printf ("Matrix without saddle point\n");
- for (i = 0; i < a; i++)
- {
- for (j = 0; j < b; j++)
- {
- B[i][j] = rand();
- printf ("%d ", B[i][j]);
- }
- printf ("\n");
- }
- int *pb;
- pb = &B[0][0];
- f( pb, a, b, &s, &min, &max);
- }
- }
- int f(int *pa,int a, int b, int *s, int *min, int *max)
- {
- int i,j, A[a][b], index1, index2, pmin, pmax, flag = 0, flag2 = 0, m;
- *s=0;
- *min=*pa;
- *max=*pa;
- for (i = 0; i < a; i++)
- {
- for (j = 0; j < b; j++)
- {
- if ( *(pa + i * b + j) > *max)
- *max= *(pa + i * b + j);
- if ( *(pa + i * b + j) < *min)
- *min = *(pa + i * b + j);
- }
- }
- printf("\nmin = %d \nmax = %d\n", *min, *max);
- for (i = 0; i < a; i++)
- {
- pmin = *(pa + i * b);
- index1 = 0;
- for (j = 0; j < b; j++)
- {
- if (*(pa + i * b + j) < pmin)
- {
- pmin = *(pa + i * a + j);
- index1 = j;
- }
- }
- flag = 1;
- for (m = 0; m < a; m++)
- {
- if (*(pa + m * b + j) > pmin)
- {
- flag = 0;
- break;
- }
- }
- if (flag == 1)
- {
- *s = pmin;
- printf ("saddle point = %d", *s);
- flag2 = 1;
- break;
- }
- }
- if (flag2 == 1)
- {
- return 0;
- }
- else
- {
- for (i = 0; i < a; i++)
- {
- pmax = *(pa + i * a);
- index2 = 0;
- for (j = 0; j < b; j++)
- {
- if (*(pa + i * b + j) > pmax)
- {
- pmax = *(pa + i * a + j);
- index2 = j;
- }
- }
- flag = 1;
- for (m = 0; m < a; m++)
- {
- if (pmax > *(pa + m * a + index2))
- {
- flag = 0;
- break;
- }
- }
- if (flag == 1)
- {
- *s = pmax;
- printf ("saddle point = %d", *s);
- flag2 = 1;
- break;
- }
- }
- }
- if (flag2 == 1)
- {
- printf("\nsaddle point = %d", *s);
- return 0;
- }
- else
- {
- printf ("NO SADDLE POINT\n");
- return 1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement