Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

8 лабораторная работа ОП

.pdf
Скачиваний:
3
Добавлен:
01.12.2023
Размер:
982.1 Кб
Скачать

Министерство науки и высшего образования Российской Федерации Федерального государственное бюджетное образовательное учреждение высшего образования

«ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ» (ТУСУР)

Кафедра безопасности информационных систем (БИС)

Windows Forms

Отчет по лабораторной работе по дисциплине «Основы программирования»

Выполнил: Студент гр. 711-2

_______ Е. П. Толстолес

10.03.2022

Принял:

Инженер КИБЭВС

_______ Д.Р. Уразаев

10.03.2022

Томск 2022

2

 

Содержание

 

1

Введение .....................................................................................................

3

2

Ход работы .................................................................................................

4

2.1

Листинг исходного кода программ.............................................................

4

2.2

Процесс выполнения программы и ввод данных......................................

11

3 Заключение ..................................................................................................

14

Список использованной литературы..............................................................

15

3

1 Введение

Цель: разработка программ с графическим интерфейсом через Windows Forms.

Задание создать консольные приложения с графическим интерфейсом.

1.Написать программу, которая вычисляет силу тока в цепи при двух подключенных параллельно резисторах.

2.Написать программу, которая вычисляет силу тока в цепи (используя закон Ома). Цепь состоит из двух сопротивлений, которые могут быть подключены последовательно и параллельно.

3.Вычислить значение с помощью полосы прокрутки р + (р + 1) + (р + 2) + … + (р + n) = (n + 1) (2p + n)/2.

4

1Ход работы

2.1Листинг исходного кода программы

Согласно условию задания, листинг исходного кода программы задания 1 будет иметь вид:

namespace WinFormsApp4

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void textBox1_TextChanged(object sender, EventArgs e)

{

string r = textBox1.Text; if (r != "") ;

}

private void textBox2_TextChanged(object sender, EventArgs e)

{

string u = textBox2.Text; if (u != "") ;

5

}

private void label1_Click(object sender, EventArgs e)

{

}

private void button1_Click(object sender, EventArgs e)

{

try

{

double u = double.Parse(textBox1.Text); double r = double.Parse(textBox2.Text); double i;

i = u/((1/r) + (1/r));

MessageBox.Show($"Сила тока = {i}", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information);

}

catch (FormatException exception)

{

MessageBox.Show(exception.Message, "Заполните поля корректно", MessageBoxButtons.OK, MessageBoxIcon.Error);

}

catch (DivideByZeroException exception)

{

MessageBox.Show(exception.Message, "Заполните поля корректно", MessageBoxButtons.OK, MessageBoxIcon.Error);

}

}

}

}

6

Согласно условию задания, листинг исходного кода программы задания 2 будет иметь вид:

namespace WinFormsApp4

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void checkBox1_CheckedChanged(object sender, EventArgs e)

{

}

private void textBox1_TextChanged(object sender, EventArgs e)

{

string r = textBox1.Text; if (r != "") ;

}

private void textBox2_TextChanged(object sender, EventArgs e)

{

string u = textBox2.Text; if (u != "") ;

}

7

private void label1_Click(object sender, EventArgs e)

{

}

private void button1_Click(object sender, EventArgs e)

{

try

{

double u = double.Parse(textBox1.Text); double r = double.Parse(textBox2.Text); double i;

if (checkBox1.Checked)

{

i = u/(2*r);

}

else

i = u / ((1 / r) + (1 / r));

MessageBox.Show($"Сила тока = {i}", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information);

}

catch (FormatException exception)

{

MessageBox.Show(exception.Message, "Заполните поля корректно", MessageBoxButtons.OK, MessageBoxIcon.Error);

}

catch (DivideByZeroException exception)

{

MessageBox.Show(exception.Message, "Заполните поля корректно", MessageBoxButtons.OK, MessageBoxIcon.Error);

8

}

}

}

}

Согласно условию задания, листинг исходного кода программы задания 3 будет иметь вид:

namespace WinFormsApp5

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void checkBox1_CheckedChanged(object sender, EventArgs e)

{

}

private void textBox1_TextChanged(object sender, EventArgs e)

{

}

private void label2_Click(object sender, EventArgs e)

{

9

}

private void label3_Click(object sender, EventArgs e)

{

}

private void label1_Click(object sender, EventArgs e)

{

}

private void hScrollBar1_Scroll(object sender, ScrollEventArgs e)

{

}

private void button1_Click(object sender, EventArgs e)

{

double p; double s = 0;

p = double.Parse(textBox1.Text); hScrollBar1.Minimum = 1; hScrollBar1.Maximum = 109; hScrollBar1.LargeChange = 10;

label2.Text = $"Минимальное значение: {hScrollBar1.Minimum}"; label1.Text = $"Максимальное значение: {hScrollBar1.Maximum -

9}";

int n = hScrollBar1.Value; label3.Text = $"n = {n}";

10

if (checkBox1.Checked)

{

s = (n + 1) * (2 * p + n) / 2;

}

else

{

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

{

s += (p + i);

}

}

MessageBox.Show($"Результат = {s}", "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information);

}

}

}