С# решение задачи Количество дорог Напишите программу на языке C#, которая подсчитывает общее количество дорог в городе

  • 61
С# решение задачи "Количество дорог"
Напишите программу на языке C#, которая подсчитывает общее количество дорог в городе Новые Васюки. Структура дорожной системы представлена матрицей смежности графа. Некоторые дороги имеют одностороннее движение.
Входные данные:
На первой строке вводится количество перекрёстков в городе Новые Васюки, обозначаемое символом N ( 1 ≤ N ≤ 1000 ).
На следующих N строках записана матрица смежности графа, состоящая из N чисел, разделенных пробелами.
Выходные данные:
Программа должна вывести одно число - общее количество дорог в городе Новые Васюки. Односторонние дороги должны быть учтены только один раз.
Сон
55
Чтобы решить данную задачу на подсчет общего количества дорог в городе Новые Васюки, мы можем использовать следующий алгоритм:

1. Сначала нам необходимо получить входные данные, которые представляют количество перекрестков в городе и матрицу смежности графа дорожной системы.

2. Создадим переменную "количество_дорог" и инициализируем ее значением 0. Эта переменная будет использоваться для подсчета общего количества дорог.

3. Проходим по каждой строке матрицы смежности и по каждому элементу в каждой строке.

4. Если значение элемента не равно 0, то это означает, что существует дорога между соответствующими перекрестками. Увеличиваем значение переменной "количество_дорог" на 1.

5. После того, как мы пройдемся по всей матрице смежности, выводим значение переменной "количество_дорог" на экран.

Вот готовый код на языке C#:

csharp
using System;

class Program
{
static void Main(string[] args)
{
int n = int.Parse(Console.ReadLine());
int[,] adjacencyMatrix = new int[n, n];

// Чтение матрицы смежности
for (int i = 0; i < n; i++)
{
string[] row = Console.ReadLine().Split(" ");
for (int j = 0; j < n; j++)
{
adjacencyMatrix[i, j] = int.Parse(row[j]);
}
}

int numberOfRoads = 0;

// Подсчет количества дорог
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; J++)
{
if (adjacencyMatrix[i, j] != 0)
{
numberOfRoads++;
}
}
}

Console.WriteLine(numberOfRoads);
}
}


Данный код считывает входные данные со стандартного ввода, создает и заполняет матрицу смежности графа, а затем использует циклы для подсчета общего количества дорог и вывода результата на экран.

Важно обратить внимание, что данный код предполагает корректные входные данные, то есть количество перекрестков и значения матрицы смежности должны соответствовать заданным ограничениям.