Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа Тема 4

Работа добавлена на сайт samzan.net:


МОСКОВСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ СВЯЗИ И ИНФОРМАТИКИ

Лабораторная работа

Тема 4.5: «Программирование алгоритмов регулярных циклических структур»

Выполнил студент

группы ИТ1051

Бахтеев А.С.

Содержание:

  1.  Условия задания_____________________________________ стр. 3
  2.  Формализация задания________________________________стр. 3
  3.  Блок-схема__________________________________________стр. 4
  4.  Windows приложение_________________________________стр. 5
  5.  Доказательство правильности результата________________ стр.8
  6.  Выводы_____________________________________________стр. 9

1. Условия задания:

Создать приложение для вычисления функции Y согласно приведенной в задании формулы.

Задано: аргумент функции YX, меняется на отрезке [a;b] с шагом h.

Отрезок [-π;π], шаг h=π/8.

Вычислить: Сумму значений функции y=f(x), заданной формулой:

2. Формализация задания:

На входе приложения рассчитываем все значения, которые принимает переменная X, десятичная часть отделяется от целой при помощи запятой.

На выходе получаем вещественное число Y, рассчитанное по формуле:

 

И  вещественное число, являющееся суммой всех неотрицательных значений функции  y=f(x).

3. Блок-схема

4. Windows приложение.

Рис. 4.1.1 «Графический интерфейс»

На рис. 4.1.1 изображен графический интерфейс windows приложения. Кнопка «ВЫЧИСЛИТЬ» запускает вычисления. Кнопка «ВЫХОД» завершает работу программы и закрывает окно приложения.

В списки «Значения X» и «Значения y=f(x)» выводятся числовые значения аргументов функции Y и рассчитанные значения функции Y, дробные части которых отделяются запятой. В текстовом поле «Сумма значений  y=f(x) при y >0» выводится результат сложения всех неотрицательных значений функции Y.

Программный код windows интерфейса:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace MyLab4_5_win

{

   public partial class Form1 : Form

   {

       public Form1()

       {

           InitializeComponent();

       }

       private void button2_Click(object sender, EventArgs e)

       {

           Close();

       }

       private void button1_Click(object sender, EventArgs e)

       {

           //задаем переменные

           double X = -Math.PI;

           double Y, sum = 0;

           double h = Math.PI / 8;

           while (X <= Math.PI) //выполняем пока Х не станет больше Пи

           {

               listBox1.Items.Add(Math.Round(X, 4));

               //добавляем в listBox1 строчку с текщим значением X

               //округленным до 4х знаков после запятой

               Y = 1 / (X + 2 * Math.PI) - Math.Sin(X);

               listBox2.Items.Add(Math.Round(Y, 7));

               //рассчитываем и выводим в listBox2 значение функции Y

               if (Y > 0)

               {

                   sum = sum + Y;

               }

               //складываем все значения Y, которые больше нуля

               X = X + h;

               //добавляем к Х Pi/8

           }

           textBox1.Text = sum.ToString();

           //выводим суммарное значение Y при Y>0

       }

   }

}

Программный код класса Program:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Windows.Forms;

namespace MyLab4_5_win

{

   static class Program

   {

       /// <summary>

       /// Главная точка входа для приложения.

       /// </summary>

       [STAThread]

       static void Main()

       {

           Application.EnableVisualStyles();

           Application.SetCompatibleTextRenderingDefault(false);

           Application.Run(new Form1());

       }

   }

}

Рис. 4.1.2 «Результаты работы»

На рис. 4.1.2 изображено окно windows приложения, рассчитывающего значение функции Y, согласно рассчитанным значениям аргумента этой функции.

Входящие данные X = -3,1416; …; 3,1416. На выходе значения функции Y = 0,3183099; …; 0,1061033. Сумма положительных значений Y: sum = 7,13974197967466.

5. Доказательство правильности результата

Для краткости посчитаем элементы выборочно.

X = -3,1416;

Y = 1/(-3,1416+2*3,1416) – sin(-3,1416) = 0,3183099 (верно)

X = -1,1781;

Y = 1/(-1,1781+2*3,1416) – sin(-1,1781) = 0,195883 + 0,92388 = 1,119763 (верно)

X = 0,7854;

Y = 1/(0,7854+2*3,1416) – sin(0,7854) = 0,14147 – 0,7071 = -0,56563 (верно)

sum = 0,3183099 + 0,6656256 + 0,9617547 + 1,1553776 + 1,2122066 + 1,1197625 + 0,8889981 + 0,5524487 + 0,1591549 + 0,1061033 = 7,13974149 (учитывая, что C# округляет значения Y можем считать, что ответ верный и совпадает с результатом программы)

6. Выводы

1. Формализация:

Расчет происходил по формуле:

2. Интерфейс

Для всех форм был создан интерфейс, с полями для ввода и вывода значений.

3. Алгоритм

Для работы был составлен алгоритм решения, составлена блок-схема.

4. Код

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

5. Тест

Программа проверена на правильность работы.

Выявленные ошибки в программе устранены.

6. Результат и проверка

Все данные были проверены с помощью ручных вычислений.

X = -3,1416;

Y = 0,3183099;

X = -1,1781;

Y = 1,119763;

X = 0,7854;

Y = -0,56563;

Сумма положительных: 7,13974149




1. Лабораторная работа 2 Составить расписание занятий для 2 курса заочной формы обучения направления Пе
2. Мировая валютная система валютный рынок и валютный курс
3. тематизированы развились те или иные аспекты достижений прежнего периода; происходило концентрирование вн
4. Mil Моб.html
5. Психолого-дидактические характеристики учебной деятельности
6. Общая характеристика экономического развития России в первой половине XVIII в Сущность реформ Петра I
7. Комплексная информационная автоматизированная система Кафедра
8. Environmentl impcts of renewble energy technologies
9.  Планирование электрической нагрузки цеха 1
10.  Гади ~~мл~не~ т~рен билгел~рг~ синтаксик анализ ясарга Агыйделд~ алтын с~зл~рен~ морфологик анализ я
11. Сталинская модель модернизации страны- коллективизация Автор данной разработки работает по учебнику А
12. Масштабы потребления наркотиков в мире
13. Контрольная работа- Химически опасные объекты РФ, аварии на них
14. Методичні рекомендації до самостійної роботи студентів позааудиторна робота Актуальність тем
15. Екатеринодар Категория 55 кг мужчины пп
16. Исаак Эммануилович Бабель. Конармия.html
17. Варіант 4 Завдання 1
18. Курсовая работа- Понятие соучастия по уголовному кодексу РФ
19. Техническое обслуживание аккумуляторных батарей
20.  Создайте простой круг используя Ellipticl Mrquee Tool