Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Настроить свойства элементов управления.

Поиск

Теперь нам нужно будет изменить текст надписей для элементов Label и Button, и задать подходящие имена для элементов TextBox. Для этого выделите элемент label1, перейдите в Панель свойств, (обычно она находится под Панелью элементов. Если панель выключена, включите ее в меню Вид -> Диспетчер свойств) и задайте для данного элемента значение атрибута Text как показано на рисунке.

Задайте атрибут Text для всех элементов Label и Кнопки Button аналогичным образом. Наша форма должна принять примерно следующий вид:

Теперь измените для текстовых полей (TextBox) атрибуты Name в Панели Свойств – для первого поля это будет num1, а для второго, соответственно num2. Тем самым мы изменили имена классов для полей TextBox, чуть позднее Вы поймете зачем.

Итак, каркас формы готов. Если откомпилировать и запустить программу, то мы увидим, какой будет наша форма на финише, правда сейчас она совершенно бесполезна.

4. Сделать кнопку “ развернуть” неактивной,

так как изменение размеров данной формы испортит ее внешний вид. Вы также можете это сделать, щелкнув левой кнопкой мыши на пустом месте формы и в Панели свойств задать для атрибута MaximizeBox параметр False.

 

5. Создать обработчик событий для кнопки.

Перейдем к написанию обработчика событий для кнопки Button, т.е. что будет происходить при нажатии на эту кнопку. Также мы напишем саму функцию вычисления факториала, которую мы будем использовать в обработчике.

Первым делом нужно добавить заголовочный файл fact.h в проект. Для этого щелкнем правой кнопкой мыши в Обозревателе решений на папке Заголовочные файлы, далее меню Добавить -> Создать Элемент, вписываем название файла – fact.h и нажимаем Добавить. В данном файле будет содержаться прототип (заголовок) функции для вычисления факториала. Добавляем туда следующий исходный код.

long double fact(int N);

Далее подключаем этот файл к проекту с помошью директивы #include – Открываем файл factr.cpp и добавляем туда после строчки:

#include "stdafx.h"

следующий код:

#include "fact.h"

Теперь наш заголовочный файл подключен к проекту. Далее аналогичным образом создаем файл исходного кода fact.cpp в проект.

В него добавляем саму функцию вычисления факториала целого числа.

#pragma once

#include "stdafx.h"

long double fact(int N)

{

// если пользователь ввел отрицательное число

if(N < 0)

// возвращаем ноль

return 0;

// если пользователь ввел ноль

if (N == 0)

// возвращаем факториал нуля

return 1;

// Во всех остальных случаях

else

// делаем рекурсию

return N * fact(N - 1);

}

Теперь наш проект содержит функцию вычисления факториала. Откомпилируйте его. Если ошибок нет, то можно приступить к написанию обработчика событий для кнопки Button.

Открываем файл Form1.h, в нем мы видим визуальное представление нашей формы. Щелкаем двойным щелчком на кнопке Button и переходим к исходному коду процедуры обработки события нажатия кнопки (click).

После фигурной скобки ставим абзац и приступаем к кодированию.

Сначала нам необходимо описать и инициализировать переменную, в которой будет храниться число, для которого должен быть вычислен факториал. Добавим в то место, где Вы поставили абзац, следующий код:

int number = System::Convert::ToDouble(num1->Text);

Эта строка инициализирует переменную, которая хранит в себе число для вычисления его факториала. (Любой набор символов, которые мы будем вводить с клавиатуры в текстовое поле (TextBox) является строкой. Поэтому нам нужно вытащить значение из текстового поля и привести его к целочисленному типу. Это довольно сложная процедура, но, к счастью, в языке C++ есть функций, выполняющие конвертирование типов данных. Одна из таких функций (Convert) используется в приведенном выше коде).

Далее нам нужно будет произвести вызов нашей функции fact с переменной number в качестве единственного аргумента и занести результат работы функции в новую переменную factor.

double factor = fact(number);

Затем необходимо преобразовать полученное значение обратно в строку и присвоить его второму текстовому полю.

num2->Text = System::Convert::ToString(factor);

Таким образом, наш простой обработчик событий будет выглядеть вот так:

int number = System::Convert::ToDouble(num1->Text);

double factor = fact(number);

num2->Text = System::Convert::ToString(factor);



Поделиться:


Последнее изменение этой страницы: 2017-02-08; просмотров: 415; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.146.176.112 (0.005 с.)