1 семестр / Лб6
.docxМИНОБРНАУКИ РОССИИ
Федеральное государственное образовательное учреждение высшего
образования
«Юго-Западный государственный университет»
Кафедра программной инженерии
Лабораторная работа №6
По дисциплине «Языки программирования»
Выполнил: студент группы ИБ-01б
Бунина А.В.
Проверила: доцент
Белова Т.М.
Курск, 2020
Задание 1. Среди строк целочисленной квадратной матрицы порядка 5 найдите строку с минимальной суммой элементов.
1.2 Текст программы
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
dataGridView1.RowCount = 5;
dataGridView1.ColumnCount = 5;
var arr = new int[5, 5];
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
dataGridView1.Rows[i].Cells[j].Value = arr[i, j];
}
}
}
private void button1_Click(object sender, EventArgs e)
{
try
{
int sum1 = Convert.ToInt32(dataGridView1[0, 0].Value) + Convert.ToInt32(dataGridView1[1, 0].Value) + Convert.ToInt32(dataGridView1[2, 0].Value) + Convert.ToInt32(dataGridView1[3, 0].Value) + Convert.ToInt32(dataGridView1[4, 0].Value);
int sum2 = Convert.ToInt32(dataGridView1[0, 1].Value) + Convert.ToInt32(dataGridView1[1, 1].Value) + Convert.ToInt32(dataGridView1[2, 1].Value) + Convert.ToInt32(dataGridView1[3, 1].Value) + Convert.ToInt32(dataGridView1[4, 1].Value);
int sum3 = Convert.ToInt32(dataGridView1[0, 2].Value) + Convert.ToInt32(dataGridView1[1, 2].Value) + Convert.ToInt32(dataGridView1[2, 2].Value) + Convert.ToInt32(dataGridView1[3, 2].Value) + Convert.ToInt32(dataGridView1[4, 2].Value);
int sum4 = Convert.ToInt32(dataGridView1[0, 3].Value) + Convert.ToInt32(dataGridView1[1, 3].Value) + Convert.ToInt32(dataGridView1[2, 3].Value) + Convert.ToInt32(dataGridView1[3, 3].Value) + Convert.ToInt32(dataGridView1[4, 3].Value);
int sum5 = Convert.ToInt32(dataGridView1[0, 4].Value) + Convert.ToInt32(dataGridView1[1, 4].Value) + Convert.ToInt32(dataGridView1[2, 4].Value) + Convert.ToInt32(dataGridView1[3, 4].Value) + Convert.ToInt32(dataGridView1[4, 4].Value);
if (sum1 < sum2 && sum1 < sum3 && sum1 < sum4 && sum1 < sum5)
{
textBox1.Text = Convert.ToString(Convert.ToInt32(dataGridView1[0, 0].Value) + " " + Convert.ToInt32(dataGridView1[1, 0].Value) + " " + Convert.ToInt32(dataGridView1[2, 0].Value) + " " + Convert.ToInt32(dataGridView1[3, 0].Value) + " " + Convert.ToInt32(dataGridView1[4, 0].Value));
}
if (sum2 < sum1 && sum2 < sum3 && sum2 < sum4 && sum2 < sum5)
{
textBox1.Text = Convert.ToString(Convert.ToInt32(dataGridView1[0, 1].Value) + " " + Convert.ToInt32(dataGridView1[1, 1].Value) + " " + Convert.ToInt32(dataGridView1[2, 1].Value) + " " + Convert.ToInt32(dataGridView1[3, 1].Value) + " " + Convert.ToInt32(dataGridView1[4, 1].Value));
}
if (sum3 < sum2 && sum3 < sum1 && sum3 < sum4 && sum3 < sum5)
{
textBox1.Text = Convert.ToString(Convert.ToInt32(dataGridView1[0, 2].Value) + " " + Convert.ToInt32(dataGridView1[1, 2].Value) + " " + Convert.ToInt32(dataGridView1[2, 2].Value) + " " + Convert.ToInt32(dataGridView1[3, 2].Value) + " " + Convert.ToInt32(dataGridView1[4, 2].Value));
}
if (sum4 < sum1 && sum4 < sum3 && sum4 < sum2 && sum4 < sum5)
{
textBox1.Text = Convert.ToString(Convert.ToInt32(dataGridView1[0, 3].Value) + " " + Convert.ToInt32(dataGridView1[1, 3].Value) + " " + Convert.ToInt32(dataGridView1[2, 3].Value) + " " + Convert.ToInt32(dataGridView1[3, 3].Value) + " " + Convert.ToInt32(dataGridView1[4, 3].Value));
}
if (sum5 < sum1 && sum5 < sum3 && sum5 < sum2 && sum5 < sum4)
{
textBox1.Text = Convert.ToString(Convert.ToInt32(dataGridView1[0, 4].Value) + " " + Convert.ToInt32(dataGridView1[1, 4].Value) + " " + Convert.ToInt32(dataGridView1[2, 4].Value) + " " + Convert.ToInt32(dataGridView1[3, 4].Value) + " " + Convert.ToInt32(dataGridView1[4, 4].Value));
}
}
catch
{
textBox1.Text = "Ошибка";
}
}
1.3 Результат работы программы
Задание 2. Дана вещественная матрица размером n строк, m столбцов. Для каждого столбца найдите сумму элементов и упорядочьте столбцы матрицы по возрастанию сумм.
2.2 Текст программы
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int n = Convert.ToInt32(textBox1.Text);
int[] a = new int[n];
char[] b = new char[n];
int[] c = new int[n];
Random rnd = new Random();
for (int i = 0; i < a.Length; i++)
{
b[i] = Convert.ToChar(rnd.Next('a', 'z' + 1));
c[i] = rnd.Next(0, 9);
textBox2.Text += Convert.ToString(c[i] + " " + b[i] + " ");
}
string d = Convert.ToString(textBox2.Text);
string f = new String(d.Where(Char.IsDigit).ToArray());
textBox3.Text += Convert.ToString(f);
}
}
2.3 Результат работы программы
Ответы на контрольные вопросы.
Напишите фрагмент программы вывода двумерного вещественного массива, в котором 5 строк и 6 столбцов.
Ответ:
int[,] arr = new int[5, 6];
Random rnd = new Random();
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 6; j++)
{
arr[i, j] = rnd.Next(10);
textBox1.Text += arr[i, j].ToString() + " " + "\r";
}
textBox1.Text += "\n";
}
Дайте описание трехмерного целочисленного массива.
тип[,...,] имя_массива = new тип[размер1, размер2, размер3];
Дайте описание четырехмерного целочисленного массива.
тип[,...,] имя_массива = new тип[размер1, размер2, размер3, размер4];
Для чего предназначается компонент DataGridView?
Элемент управления предоставляет настраиваемую таблицу для отображения данных.
Какими основными свойствами обладает компонент DataGridView?
RowBackground и AlternatingRowBackground – Устанавливают фон строки. Если установлены оба свойства, цветовой фон чередуется.
RowBackground - для нечетных строк и AlternatingRowBackground - для четных.
ColumnHeaderHeight – Устанавливает высоту строки названий столбцов.
ColumnWidth – Устанавливает ширину столбцов.
RowHeight – Устанавливает высоту строк.
GridLinesVisibility – Устанавливает видимость линий, разделяющих столбцы и строки. Имеет четыре значения - All - видны все линии, Horizontal - видны только горизонтальные линии, Vertical - видны только вертикальные линии, None - линии отсутствуют
HeadersVisibility – Задает видимость заголовков
HorizontalGridLinesBrush и VerticalGridLinesBrush – Задает цвет горизонтальных и вертикальных линий соответственно