Cześć wszystkim !
Bardzo proszę o pomoc, co może być nie tak w moim kodzie dla zadania jak w temacie ? Sprawdzałem już poprawność użytych typów danych, pętle nie wychodzą poza zakres, ogółem nie ma się za bardzo do czego przyczepić. Nawet do warunku logicznego wyświetlającego TAK lub NIE. Oczywiście kod wsadziłem na ideone i tam na wyjściu uzyskałem właściwe odpowiedzi dla przypadków testowych. Stąd proszę, niech ktoś na spokojnie się temu przyjrzy, może dostrzeże co tam może być nie tak :)
#include <iostream>
using namespace std;
int poprawnoscKolumn (int tablica[][9])
{
int niepowtarzalnaKolumna = 1, suma=0, i,j;
for (j=0; j<9; j++)
{
for(i=0; i<9; i++)
{
suma+=tablica[i][j];
}
if (suma==45)
{
suma=0;
}
else
niepowtarzalnaKolumna=0;
}
return niepowtarzalnaKolumna;
}
int poprawnoscRzedow (int tablica[][9])
{
int niepowtarzalnyRzad = 1, suma=0, i,j;
for (i=0; i<9; i++)
{
for(j=0; j<9; j++)
{
suma+=tablica[i][j];
}
if (suma==45)
{
suma=0;
}
else
niepowtarzalnyRzad=0;
}
return niepowtarzalnyRzad;
}
int poprawnoscSubKwadratow (int tablica[][9])
{
int niepowtarzalnyKwadrat = 1, i,j,r,k, suma=0;
for (i=0; i<9; i+=3)
{
for(j=0; j<9; j+=3)
{
for(r=i; r<i+3; r++)
{
for(k=j; k<j+3; k++)
{
suma+=tablica[r][k];
}
}
if (suma==45)
{
suma=0;
}
else
niepowtarzalnyKwadrat=0;
}
}
return niepowtarzalnyKwadrat;
}
int main()
{
int n;
cin >> n;
int board [9][9];
for (int i=0; i<n; i++)
{
for(int i=0; i<9; i++)
{
for(int j=0; j<9; j++)
{
cin>>board[i][j];
}
}
if(poprawnoscKolumn(board)==1 && poprawnoscRzedow(board)==1 && poprawnoscSubKwadratow(board)==1)
cout << "TAK" << endl;
else
cout << "NIE" << endl;
}
return 0;
}
Dzięki z góry za wszelką pomoc :)