лаба инфа4
.docx
Лабораторная работа №4
Запись арифметического выражения в программе Microsoft Visual Studio на языке программирования C++ на основе использования пользовательских функций
Оглавление
1 Задание 3
2 Ход выполнения лабораторной работы 3
2.1 Формализация и уточнение задания 3
2.2 Разработка блок-схемы 3
2.3 Код программы 5
2.4 Тестирование программы 7
Список использованных источников 8
1 Задание
Разработать проект в среде программирования Microsoft Visual Studio, в которой осуществляется расчет арифметического выражения
при x = 5,305 и y = -0,084.
Для выполнения лабораторной работы следует разработать:
Функцию ввода double Vvod(TextBox^t)
Функцию double Vuch(double x, double y) для расчета арифметического выражения
Функцию вывода void Vivod(double z, TextBox^t)
Событийную функцию, в которой осуществляются вызовы функции ввода double Vvod(TextBox^t), пользовательской функции double Vuch(double x, double y) и функции вывода void Vivod(double z, TextBox^t)
2 Ход выполнения лабораторной работы
2.1 Формализация и уточнение задания
Функция ввода: double Vvod(TextBox^t).
Функция вывода: void Vivod(double z, TextBox^t).
Пользовательская функция для расчета арифметического выражения: double Vuch(double x, double y).
Переводим формулу (1) на язык программирования C++:
b= (log10(x) – pow(sin(x * y), 2))/(0, 8 * log(pow(1 - x, 2)));
2.2 Разработка блок-схемы
Построим общую блок-схему в приложении Microsoft Visio (рисунок 1).
Рисунок 1 – Блок-схема общей работы программы
Также разработаем блок-схему работы функции ввода (рисунок 2).
Рисунок 2 – Блок-схема функции ввода
Разработаем блок-схему работы пользовательской функции (рисунок 3).
Рисунок 3 – Блок-схема пользовательской функции
Разработаем блок-схему работы функции вывода (рисунок 4).
Рисунок 4 – Блок-схема функции вывода
Разработаем блок-схему событийной функции (рисунок 5).
Рисунок 5 – Блок-схема событийной функции
2.3 Код программы
Laboratornsrabots.cpp
#include "stdafx.h"
#include "Form1.h"
using namespace Laboratornsrabots;
[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
// Включение визуальных эффектов Windows XP до создания каких-либо элементов управления
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
// Создание главного окна и его запуск
Application::Run(gcnew Form1());
return 0;
}
Form1.h
#pragma once
#include "form2.h"
#include "form3.h"
namespace Laboratornsrabots {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
<…>
#pragma endregion
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
form2^ f=gcnew form2();
f->Owner=this;
f->Show();
//f->ShowDialog();
this->Hide();
}
private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) {
form3^ f=gcnew form3();
f->Owner=this;
f->Show();
//f->ShowDialog();
this->Hide();
}
};
}
Form2.h
#pragma once
#define _USE_MATH_DEFINES
#include <math.h>
namespace Laboratornsrabots {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
<…>
#pragma endregion
double Vuch(double x, double y)
{
double b=(log10(x)-pow(sin(x*y),2))/(0,8*log(pow(1-x,2)));
return b;
}
double Vvod(TextBox^t)
{
return Convert::ToDouble(t->Text);
}
void Vivod(double z, TextBox^t)
{
t->Text=Convert::ToString(z);
}
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
double x1=Vvod(textBox1);
double y1=Vvod(textBox2);
double b1=Vuch(x1,y1);
Vivod(b1,textBox3);
}
private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) {
Owner->Show();
this->Close();
}
};
}
2.4 Тестирование программы
При исходных данных x = 5,305 и y = -0,084 значение выражения совпадает с результатом в Microsoft Excel. На рисунке 1 представлен результат вычислений в Microsoft Visual Studio
Рисунок 1 – Результат вычисления в Visual Studio
На рисунке 2 показан результат вычисления арифметического выражения в программе Microsoft Exel.
Рисунок 2 – Результаты вычисления в Microsoft Exel
Список использованных источников
ГОСТ 7.1-2001 СИБИД. Библиографическая запись. Библиографическое описание. Общие требования и правила составления [электронный ресурс] URL: https://internet-law.ru/gosts/gost/1560 (дата обращения 03.11.2019)
ГОСТ 7.32-2001 СИБИД. Отчет о научно-исследовательской работе. Структура и правила оформления (с Изменением N 1) [электронный ресурс] URL: http://docs.cntd.ru/document/gost-7-32-2001-sibid (дата обращения 03.11.2019)