pomyliłem się w 1 miejscu:
#include <iostream>
short SzukajKw(short tab[][7], int x, int y, int m);
short Szukaj(short tab[][7], int a, int b);
int main()
{
using namespace std;
short tablica[8][7] =
{{1,1,1,2,3,4,5},
{2,3,1,1,1,2,3},
{2,1,1,1,1,1,3},
{2,1,1,1,1,2,3},
{2,1,1,1,1,2,3},
{2,1,1,1,1,2,3},
{2,3,1,1,1,2,3},
{2,3,1,1,1,2,3}};
cout << Szukaj(tablica, 8, 7);
return 0;
}
short SzukajKw(short tab[][7], int x, int y, int m)
{
if (m == 1)
return 1;
for (int i = x + 1; i < x + m; i++)
for (int j = y + 1; j < y + m; j++)
if (tab[i][j] != 1)
return 0;
return m;
}
short Szukaj(short tab[][7], int a, int b)
{
short max = 0;
int rozm = 0;
for (int i = 0; i < a; i++)
{
for (int j = 0; j < b; j++)
{
if (tab[i][j] == 1)
{
rozm++;
if (i + rozm - 1 <= a)
if (max < SzukajKw(tab, i, j - rozm + 1, rozm))
max = SzukajKw(tab, i, j - rozm + 1, rozm);
}
else
rozm = 0;
}
rozm = 0;
}
return max;
}