Добавлен: 18.03.2024
Просмотров: 9
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Отчет по лабораторной работе на тему:
Разработка линейной программы
«Простой калькулятор»
1 Постановка задачи
1.1 Требования к разрабатываемой программе
Создание проекта “ Простой калькулятор” в среде Visual Studio C++. В таблице 1 указаны все используемые при создании проекта элементы.
Таблица 1 - Список используемых элементов
Элемент | Свойство | Значение |
Форма Windows Form | Text | Простой калькулятор |
FormBorderStyle | FixedSingle | |
MaximizeBox | False | |
Size | 499; 358 | |
Lable | (Name) | labelТекс |
Text | Вычислить | |
TextAlign | TopLeft | |
Cursor | Default | |
Font | Microsoft Sans Serif;14pt | |
Location | 24; 19 | |
Size | 151; 29 | |
Lable | (Name) | label1 |
Text | Первое число | |
TextAlign | TopLeft | |
Cursor | Default | |
Font | Microsoft Sans Serif;14pt | |
Location | 22; 69 | |
Size | 153; 24 |
Продолжение таблицы 1
Lable | (Name) | label2 |
Text | Второе число | |
TextAlign | TopLeft | |
Cursor | Default | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 23; 138 | |
Size | 151; 24 | |
Lable | (Name) | label3 |
Text | Ответ: | |
TextAlign | TopLeft | |
Cursor | Default | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 22; 213 | |
Size | 78; 24 | |
TextBox | (Name) | textBox1 |
Text | (Пусто) | |
TextAlign | Right | |
Cursor | IBeam | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 195; 61 | |
Size | 104; 34 | |
TextBox | (Name) | textBox2 |
Text | (Пусто) | |
TextAlign | Right | |
Cursor | IBeam | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 195; 130 | |
Size | 104; 34 |
Продолжение таблицы 1
TextBox | (Name) | textBoxResult |
Text | (Пусто) | |
TextAlign | Right | |
Cursor | No | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 195; 205 | |
Size | 104; 34 | |
Enabled | False | |
Button | (Name) | buttonPlus |
Text | Сложить | |
Cursor | Hand | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 316; 53 | |
Size | 129; 40 | |
Button | (Name) | buttonDeduct |
Text | Вычесть | |
Cursor | Hand | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 316; 99 | |
Size | 129; 40 | |
Button | (Name) | buttonMultiply |
Text | Умножить | |
Cursor | Hand | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 316; 145 | |
Size | 129; 40 |
Продолжение таблицы 1
Button | (Name) | buttonDivide |
Text | Делить | |
Cursor | Hand | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 316; 191 | |
Size | 129; 40 | |
Button | (Name) | buttonСбросить |
Text | Сбросить | |
Cursor | Hand | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 77; 250 | |
Size | 129; 40 | |
Button | (Name) | buttonClose |
Text | Закрыть | |
Cursor | Hand | |
Font | Microsoft Sans Serif; 13,8pt; style=Bold | |
Location | 240; 250 | |
Size | 129; 40 |
1. 2 Прочие требования к разрабатываемой программе
-
Ввод-вывод данных в программе должен производиться с клавиатуры, другие способы ввода не предусмотрены. -
При попытке ввода пользователем в поля «Первое число» и «Второе число» чисел с незначащими нулями, программа конвертирует число в кротчайшую запись. -
При вводе значений, предусматривающих отсутствие точного ответа, например деление на ноль, программа должна выводить на экран дополнительное окно с предупреждением об ошибке.
3 Текст программы
#pragma endregion
// Кнопка сложения
private: System::Void buttonPlus_Click(System::Object^ sender, System::EventArgs^ e) {
double a, b, Result;
int lenght1 = textBox1->Text->Length;
int lenght2 = textBox2->Text->Length;
if (lenght1 == 0 || lenght2 == 0)
if (lenght1 == 0 && lenght2 == 0)
{
MessageBox::Show("Вы не ввели первое и второе число число", "Ошибка",
MessageBoxButtons::OK, MessageBoxIcon::Error);
}
else
{
if (lenght1 == 0)
{
MessageBox::Show("Вы не ввели первое число", "Ошибка",
MessageBoxButtons::OK, MessageBoxIcon::Error);
}
if (lenght2 == 0)
{
MessageBox::Show("Вы не ввели второе число", "Ошибка",
MessageBoxButtons::OK, MessageBoxIcon::Error);
}
else
{
if (textBox1->Text != "-" && textBox2->Text != "-")
{
this->labelТекст->Text = L"Сложение";
a = Convert::ToDouble(textBox1->Text);
b = Convert::ToDouble(textBox2->Text);
Result = a + b;
this->textBoxResult->Text = Convert::ToString(Result);
this->labelZnak->Text = L"+";
this->labelRavno->Text = L"=";
}
else
{
MessageBox::Show("Вы не ввели число", "Ошибка",
MessageBoxButtons::OK, MessageBoxIcon::Error);
textBoxResult->Clear();
}
}
}
// Кнопка сброс
private: System::Void button5_Click(System::Object^ sender, System::EventArgs^ e) {
textBox1->Clear();
textBox2->Clear();
textBoxResult->Clear();
}
// Кнопка завершения
private: System::Void buttonClose_Click(System::Object^ sender, System::EventArgs^ e) {
this->Close();
}
4 Результаты тестирования программы
Результаты выполнения программы представлены в таблице 2 и на рисунках 4.1 – 4.6.
Таблица 2 – Исходные тестовые данные и соответствующие результаты
Исходные данные | Сложение | Вычитание |
3,57 9,53 | 13,1(рис. 4.1) | -5,96 (рис. 4.2) |
Рисунок 4.1 – Результат выполнения программы
Рисунок 4.2 – Результат выполнения программы