
08.12.2009, 01:13
|
|
Постоянный
Регистрация: 22.11.2008
Сообщений: 395
Провел на форуме: 3987105
Репутация:
776
|
|
Сообщение от jecka3000
язык си шарп
Условие:
Определить класс с методом, который вычисляет и возвращает количество нулевых строк (т.е. строк, состоящих из одних нулей) в квадратной матрице целого типа произвольных размеров. Даны две квадратные матрицы размером NxN. Значение N ввести с клавиатуры. Заполнить обе матрицы путем ввода с клавиатуры. Выдать на экран построчно ту матрицу, который имеет больше нулевых строк. Если таких строк в матрицах одинаковое количество, вывести любую из них.
С меня стопиццот плюсафф))
Если правильно понял то вот:
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication10
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(" Введите размер матрицы");
int N = Convert.ToInt32(Console.ReadLine());
int[,] m1 = new int[N, N];
int[,] m2 = new int[N, N];
int i1, j1, p1, p2, r = 0;
p1 = 0; p2 = 0;
Console.WriteLine("Матрица 1");
for (i1 = 0; i1 < N; i1++) // вводим первую матрицу
{
for (j1 = 0; j1 < N; j1++)
{
m1[i1, j1] = Convert.ToInt32(Console.ReadLine());
if ((m1[i1, j1] != 0) || (r != 0))
{
r = 1;
}
else
{
r = 0;
}
}
if (r == 0)
{
p1++;
}
r = 0;
}
Console.WriteLine("Матрица 2");
r = 0;
for (i1 = 0; i1 < N; i1++) // вводим вторую матрицу
{
for (j1 = 0; j1 < N; j1++)
{
m2[i1, j1] = Convert.ToInt32(Console.ReadLine());
if ((m2[i1, j1] != 0) || (r != 0))
{
r = 1;
}
else
{
r = 0;
}
}
if (r == 0)
{
p2++;
}
r = 0;
}
if (p1 > p2) //если у матрицы 1 кол-во строк с 0 больше то выводим ее
{
for (i1 = 0; i1 < N; i1++) // вывод
{
for (j1 = 0; j1 < N; j1++)
{
Console.Write(m1[i1, j1]);
}
Console.WriteLine();
}
}
else
{
if (p1 < p2) //если у матрицы 2 кол-во строк с 0 больше то выводим ее
{
for (i1 = 0; i1 < N; i1++) // вывод
{
for (j1 = 0; j1 < N; j1++)
{
Console.Write(m2[i1, j1]);
}
Console.WriteLine();
}
}
else
{
if ((p1 == p2) && (p1!=0)) //если кол-во равные то выводим первую
{
for (i1 = 0; i1 < N; i1++) // вывод
{
for (j1 = 0; j1 < N; j1++)
{
Console.Write(m1[i1, j1]);
}
Console.WriteLine();
}
}
else
{
Console.WriteLine("Нет нулевых строк");
}
}
}
Console.ReadKey();
}
}
}
|
|
|