
ФГБОУ ВО Уфимский государственный авиационный технический университет
Кафедра Информатики
100 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
90 |
|
|
|
|
|
|
|
|
|
|
|
|
80 |
|
|
|
|
|
|
|
|
|
|
|
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
|
|
|
|
|
|
|
|
|
|
|
|
40 |
|
|
|
|
|
|
|
|
|
|
|
|
30 |
|
|
|
|
|
|
|
|
|
|
|
|
20 |
|
|
|
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Многооконный пользовательский интерфейс. Операторы цикла.
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к лабораторной работе по |
информатике |
1306.501410.000ПЗ |
(обозначение документа) |
Группа |
|
|
Фамилия, И., О. |
Подпись |
Дата |
Оценка |
||||
ИВТ-127б |
|
|||||||||
|
|
|||||||||
Студент |
Мустафина К. И. |
|
|
|
||||||
Консультант |
Зигангирова Ю. В. |
|
|
|
||||||
Принял |
Зигангирова Ю. В. |
|
|
|
Уфа 2021 г.
Содержание
Введение 3
1. Индивидуальное задание №1 4
1.1. Постановка задачи 4
1.2. Создание интерфейса 4
1.3. Разработка блок-схемы 5
1.4. Разработка программного кода 5
2. Индивидуальное задание № 2 8
2.1. Постановка задачи 8
2.2. Создание интерфейса 8
8
2.3. Разработка блок-схемы 9
2.4. Разработка программного кода 9
3. Индивидуальное задание №3 12
3.1. Постановка задачи 12
3.2. Создание интерфейса 12
12
3.3. Разработка блок-схемы 13
3.4. Разработка программного кода 14
Вывод 16
Введение
Лабораторная работа № 4 посвящена изучению принципов использования интегрированной среды разработки Microsoft Visual Studio, а также знакомству со способами использования операторов цикла на примере создания приложений с разветвлённой структурой при помощи использования языка программирования С#.
В лабораторной работе необходимо создать многооконный проект, каждая форма которого предназначена для решения одной задачи индивидуальных заданий по варианту № 10.
Задание 1. Создать форму, программный код которой позволяет протабулировать кусочно-заданную функцию, параметры функции, диапазон изменения значения аргумента и шаг задается пользователем в текстовых полях.
Задание 2. Создать форму, программный код которой позволяет осуществлять решение задачи:” Найти все простые числа, лежащие в заданном диапазоне”.
Задание 3. Создать форму, программный код которой позволяет протабулировать функцию и сумму этого ряда на заданном диапазоне, с шагом, задаваемым пользователем, вычислить относительную и абсолютную погрешность.
Сумма ряда:
Функция:
Индивидуальное задание №1
Постановка задачи
Создать форму, программный код которой позволяет протабулировать кусочно-заданную функцию, параметры функции, диапазон изменения значения аргумента и шаг задается пользователем в текстовых полях.
Входные данные:
t, step, start, finish –аргументы функции, вещественные числа (Double).
Выходные данные:
x- значение заданной функции от которой зависит результат вычисления, вещественное число (Double).
y–вычисленное значение заданной функции, вещественное число (Double).
Создание интерфейса
На Рисунок 1 представлен интерфейс формы для решения задания № 1.
Рисунок 1–Интерфейс формы для задания № 1
Разработка блок-схемы
На Рисунок 2 представлен алгоритм решения задачи в виде блок-схемы.
Рисунок 2 – Блок-схема к заданию №1
Разработка программного кода
Далее представлен разработанный программный код. Реализации алгоритма решения задания №1 в соответствии алгоритмом, представленном в виде блок-схемы на Рисунок 2 соответствует процедура button1_Click().
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Л_4_ИндЗадания
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void button4_Click(object sender, EventArgs e)
{
Close();
}
private void button1_Click(object sender, EventArgs e)
{
double y, t, step, start, finish;
t = Convert.ToDouble(textBox1.Text);
start = Convert.ToDouble(textBox2.Text);
finish = Convert.ToDouble(textBox3.Text);
step = Convert.ToDouble(textBox4.Text);
textBox5.Text = "x" + "\t" +"y(x)"+ "\r\n";
for (double x = start; x <= finish; x += step)
{
if (x < 0.5) {
y = (Math.Pow(Math.Log(x), 3) + Math.Pow(x, 2)) / (Math.Sqrt(Math.Abs(x + t)));
}
else if (x >= 0.5 && x <= 1.5)
{
y = Math.Sqrt(x + t) + 1 / x;
}
else { y = Math.Cos(x) + t * Math.Pow(Math.Sin(x), 2); }
textBox5.Text += x +"\t"+ y.ToString("F3")+ "\r\n";
}
}
private void button2_Click(object sender, EventArgs e)
{
Form1 form1 = new Form1();
form1.Show();
this.Close();
}
}
}
На Рисунок 3 представлен результат вычислений.
Рисунок 3 –Пример выполнения задания № 1
Индивидуальное задание № 2
Постановка задачи
Создать форму, программный код которой позволяет найти простые числа, лежащие в заданном диапазоне.
Входные данные:
start, finish –аргументы функции, вещественные числa (Double).
Выходные данные:
kolvo–вычисленное значение заданной функции зависимое от условия выбора пользователем, вещественное число (Double).
Создание интерфейса
На Рисунок 4 представлен интерфейс формы для решения задания № 2.
Рисунок 4 –Интерфейс формы для задания № 2
Разработка блок-схемы
На Рисунок 5 представлен алгоритм решения задачи в виде блок-схемы.
Рисунок 5– Блок-схема к заданию №2
Разработка программного кода
Далее представлен разработанный программный код. Реализации алгоритма решения задания №2 в соответствии алгоритмом, представленном в виде блок-схемы на Рисунок 5 соответствует процедура button1_Click().
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Л_4_ИндЗадания
{
public partial class Form3 : Form
{
public Form3()
{
InitializeComponent();
}
private void button4_Click(object sender, EventArgs e)
{
Close();
}
private void button1_Click(object sender, EventArgs e)
{
int start, finish, kolvo=0;
start = (int)numericUpDown1.Value;
finish = (int)numericUpDown2.Value;
for (int i = start; i <= finish; i++)
{
bool pri = true;
for (int j = 2; j <= (i / 2); j++)
{
if (i % j == 0)
{
pri = false;
break;
}
}
if (pri == true)
{
kolvo++;
textBox2.Text += Convert.ToString(i) + "\t";
}
}
textBox1.Text = Convert.ToString(kolvo);
}
private void button2_Click(object sender, EventArgs e)
{
Form1 form1 = new Form1();
form1.Show();
this.Close();
}
}
}
На Рисунок 6 представлен результат вычислений.
Рисунок 6 –Пример №1 выполнения задания № 1