Почему мне выдает строку, в которой наибольшее число нулей? Для квадратной целочисленной матрицы, заполненной случайными числами, порядка n определить номер первой по порядку строки, содержащей наименьшее число нулей. #include"stdafx.h" #include"iostream" #include"ctime" using namespace std; int main() { int a[4][4], i, j, k, nomi, p; srand(time(NULL)); for (i=0; i<4;i++) { for (j=0; j<4; j++) { a[i][j]=rand()%4-3; cout<< a[i][j]<<'\t';} cout<<endl; } nomi=-1; p=0; for (i=0; i<4; i++) { k=0; for (j=0; j<4; j++) if(a[i][j]==0) k++; if(k>p) { p=k; nomi=i; } } if(nomi!=-1) cout << "nom stroki: " << nomi << "\n" << p << " nyley"; else cout << "net strok sod 0"; system ("pause"); return 0; }
Мгновенный программист.
:ПиНгВиНэ ПоД НоСкОм
Помогите, пожалуйста!
Почему мне выдает строку, в которой наибольшее число нулей?
Для квадратной целочисленной матрицы, заполненной случайными числами, порядка n определить номер первой по порядку строки, содержащей наименьшее число нулей.
#include"stdafx.h"
#include"iostream"
#include"ctime"
using namespace std;
int main()
{ int a[4][4], i, j, k, nomi, p;
srand(time(NULL));
for (i=0; i<4;i++)
{ for (j=0; j<4; j++)
{ a[i][j]=rand()%4-3;
cout<< a[i][j]<<'\t';}
cout<<endl; }
nomi=-1;
p=0;
for (i=0; i<4; i++)
{
k=0;
for (j=0; j<4; j++)
if(a[i][j]==0)
k++;
if(k>p)
{
p=k;
nomi=i;
}
}
if(nomi!=-1)
cout << "nom stroki: " << nomi << "\n" << p << " nyley";
else
cout << "net strok sod 0";
system ("pause");
return 0;
}