Задана матрица Х .Найти строки с максимальным и минимальным средним значениями элементов и поменять их местами.

ОТЧЁТ

 

ЛАБОРАТОРНОЙ РАБОТЫ № 11

ПО ДИСЦИПЛИНЕ «АЛГОРИТМИЧЕСКИЕ ЯЗЫКИ»

НА ТЕМУ:

«РАБОТА С МАССИВАМИ».

 

Отчёт подготовил: студент 1-го курса

Ахтямов Ренат Рашидович

Специальность: Безопасность автоматизированных систем

Группа: БАС.И-11

Отчёт проверил: преподаватель кафедры ЭИУ6-КФ

Либман Михаил Сергеевич

Задания: 1) Дан одномерный массив. Вывести все четные и произведение нечетных чисел из массива.

Задана матрица Х .Найти строки с максимальным и минимальным средним значениями элементов и поменять их местами.

 

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace ConsoleApplication34

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("Задание 1");

Console.WriteLine();

 

int[] mas = new int[10];

Random r = new Random();

for (int i = 0; i < 10; i++)

{

mas[i] = r.Next(10);

Console.Write("{0, 2}", mas[i]);

}

 

Console.WriteLine();

Console.WriteLine();

 

for (int i = 0; i < 10; i++)

{

if (mas[i] % 2 == 0)

{

Console.Write("{0, 2}", mas[i]);

}

}

 

Console.WriteLine();

Console.WriteLine();

 

 

int[] mas2 = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 };

 

 

for (int i = 0; i < 10; i++)

{

if (mas[i] % 2 != 0)

{

mas2[i] = mas[i];

}

}

 

 

int a = (mas2[0] * mas2[1] * mas2[2] * mas2[3] * mas2[4] * mas2[5] * mas2[6] * mas2[7] * mas2[8] * mas2[9]);

Console.Write(" " + a);

 

Console.WriteLine();

Console.WriteLine();

Console.WriteLine("Задание 2");

Console.WriteLine();

 

int[,] mas3 = new int[5, 5];

for (int i = 0; i < 5; i++)

for (int j = 0; j < 5; j++)

{

mas3[i, j] = r.Next(100);

}

 

for (int i = 0; i < 5; i++)

{

for (int j = 0; j < 5; j++)

{

Console.Write("{0, 3}", mas3[i, j]);

}

Console.WriteLine();

}

 

int srstr1 = ((mas3[0, 0] + mas3[0, 1] + mas3[0, 2] + mas3[0, 3] + mas3[0, 4]) / 5);

int srstr2 = ((mas3[1, 0] + mas3[1, 1] + mas3[1, 2] + mas3[1, 3] + mas3[1, 4]) / 5);

int srstr3 = ((mas3[2, 0] + mas3[2, 1] + mas3[2, 2] + mas3[2, 3] + mas3[2, 4]) / 5);

int srstr4 = ((mas3[3, 0] + mas3[3, 1] + mas3[3, 2] + mas3[3, 3] + mas3[3, 4]) / 5);

int srstr5 = ((mas3[4, 0] + mas3[4, 1] + mas3[4, 2] + mas3[4, 3] + mas3[4, 4]) / 5);

 

Console.WriteLine();

 

int[] mas4 = { srstr1, srstr2, srstr3, srstr4, srstr5 };

 

int max;

int min;

 

max = 0;

for (int i = 0; i < 5; i++)

{

if (mas4[i] > max) { max = mas4[i]; }

}

 

min = 100;

for (int i = 0; i < 5; i++)

{

if (mas4[i] < min) { min = mas4[i]; }

}

 

Console.WriteLine(max + " - максимальное среднее значение элементов в отдельно взятой строке массива");

Console.WriteLine(min + " - минимальное среднее значение элементов в отдельно взятой строке массива");

 

int maxposition = 0;

int minposition = 0;

 

for (int i = 0; i < 5; i++)

{

if (mas4[i] == max) { maxposition = i; }

}

 

for (int i = 0; i < 5; i++)

{

if (mas4[i] == min) { minposition = i; }

}

 

Console.WriteLine();

Console.WriteLine("Номер строки с максимальным средним арифметическим всех элементов - " + (maxposition + 1));

Console.WriteLine("Номер строки с минимальным средним арифметическим всех элементов - " + (minposition + 1));

 

int strposition1 = maxposition + 1;

int strposition2 = minposition + 1;

 

int[] minstr = { mas3[maxposition, 0], mas3[maxposition, 1], mas3[maxposition, 2], mas3[maxposition, 3], mas3[maxposition, 4] };

 

for (int i = 0; i < 5; i++)

{

mas3[maxposition, i] = mas3[minposition, i];

}

 

for (int i = 0; i < 5; i++)

{

mas3[minposition, i] = minstr[i];

}

 

Console.WriteLine();

 

for (int i = 0; i < 5; i++)

{

for (int j = 0; j < 5; j++)

{

Console.Write("{0, 3}", mas3[i, j]);

}

Console.WriteLine();

}

 

Console.ReadLine();

}

}

}