ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.11.2024

Просмотров: 37

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

2.2 Разработка интерфейса

На рисунке 4 представлен интерфейс формы для решения задания 2.

Рисунок 4 – Интерфейс формы для задания 2

В таблице 2 перечислены элементы управления, которые были использованы при создании интерфейса.

Таблица 2 – Элементы управления формы к заданию 2

Элемент управления

Пояснение

Form 3

Окно для решения задания 2

TextBox1

Текстовое поле для вывода всех двузначных чисел, подходящих условию

Button1

Кнопка для запуска программного кода для вычисления двузначных чисел

Button2

Кнопка для запуска программного кода для закрытия формы

PictureBox1

Графическое поле для размещения изображения с заданной функцией


2.3 Разработка блок-схемы

На рисунке 5 представлен алгоритм решения задачи в виде блок-схемы.

-

+

-

+

Рисунок 5 – Блок-схема к заданию 2

2.4 Разработка программного кода

Далее представлен разработанный программный код. Реализации алгоритма решения задания 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 лаба_2

{

public partial class Form3 : Form

{

public Form3()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

textBox1.Text = "";

int a = 10, i, j;

while (a < 100) {

i = a % 10;

j = a / 10;

if ((i * i + j * j)% 15 == 0) {

textBox1.Text += string.Format("{0,8:F0} \t\r\n", a);

}

a += 1;

}

}

private void button2_Click(object sender, EventArgs e)

{

this.Close();

}

}}

На рисунке 6 представлен результат вычислений

Рисунок 6 – Пример выполнения задания 2

3 Индивидуальное задание 3

3.1 Постановка задачи

Создать приложение, позволяющее решить следующие подзадачи:

1) Протабулировать функцию на диапазоне изменения аргумента [0,1;0,8] с шагом, задаваемым пользователем.

2) Протабулировать сумму S функционального ряда на том же отрезке с тем же шагом. Значение функционального ряда S вычислите с заданной точностью ɛ (задается пользователем)

№) Сравнить значение заданной функции со значением, полученным путем вычисления суммы ряда. Для этого вычислите абсолютную и относительную погрешность вычисления суммы ряда.

3.2 Разработка интерфейса

На рисунке 7 представлен интерфейс формы для решения задания 3.

Рисунок 7 – Интерфейс формы для задания 3

В таблице 3 перечислены элементы управления, которые были использованы при создании интерфейса.

Таблица 3 – Элементы управления формы к заданию 3

Элемент управления

Пояснение

Form 4

Окно для решения задания 3

TextBox1

Текстовое поле для ввода начала диапазона

TextBox2

Текстовое поле для ввода конца диапазона

TextBox3

Текстовое поле для ввода шага

TextBox4

Текстовое поле для ввода точности

TextBox5

Текстовое поле для вывода вычислений задания 3

Label1, Label2, Label3, Label4, Label5, Label6

Метки пояснений

Button1

Кнопка для запуска программного кода для вычисления

Button2

Кнопка для запуска программного кода для закрытия формы

PictureBox1

Графическое поле для размещения изображения с функциональным рядом и функцией



3.3 Разработка блок-схемы

На рисунке 8 представлен алгоритм решения задачи в виде блок-схемы.

-

+

-

+

Рисунок 8 – Блок-схема к заданию 3

3.4 Разработка программного кода

Далее представлен разработанный программный код. Реализации алгоритма решения задания 3 в соответствие с алгоритмом, представленном в виде блок-схемы на рисунке 8, соответствует процедура 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;

using static System.Math;

namespace лаба_2

{

public partial class Form4 : Form

{

public Form4()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

double a, b, eps, step, x, y, s = 0, n, fact, f, abc, otn, k = 1;

a = Convert.ToDouble(textBox7.Text);

b = Convert.ToDouble(textBox6.Text);

eps = Convert.ToDouble(textBox3.Text);

step = Convert.ToDouble(textBox1.Text);

textBox2.Text = " x\t f(x)\t S\t Абс./Отн." + Environment.NewLine;

for (x = a; x <= b; x += step)

{

n = 1;

fact = 1;

f = (x * (3 - x)) / (Pow(1 - x, 3));

s = x;

do

{

k *= n * (n + 2) * Pow(x, n);

s += k;

n++;

} while (Abs(k) > eps);

abc = Abs(s - f);

otn = abc / s;

textBox2.Text += string.Format("{0,8:F2}\t{1,8:F4}\t{2,8:F5}\t{3,8:F4}/{4,8:F4}\t \r"+ Environment.NewLine, x, f, s, otn, abc );

}

}

private void button2_Click(object sender, EventArgs e)

{

this.Close();

}

}

}

}

На рисунке 9 представлен результат вычислений

Рисунок 9 – Пример выполнения задания 3

4 Вывод:

В данной лабораторной работе по изучению типовых алгоритмов обработки были рассмотрены примеры реализации на языке программирования С# был создан и протестирован многооконный проект, каждая форма которого была предназначена для решения одной задачи из индивидуальных заданий по варианту №15. Основные этапы разработки проекта и результаты выполнения описаны и представлены в виде скриншотов в пояснительной записке.