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



ЗНАЕТЕ ЛИ ВЫ?

Запустите созданную программу и исследуйте ее работу.

Поиск

Поэкспериментируйте с многострочным полем редактирования Memo1, вводя и корректируя в нем любой текст. Обратите внимание на то, что в этом окне можно выполнять такие же действия с текстом, как и в текстовом редакторе: выделять фрагмент текста, копировать, переносить или изымать этот фрагмент. Вытрите текст с помощью команды главного меню "Очистить поле вывода". Еще раз введите текст и вытрите его с помощью контекстного меню (для вызова контекстного меню формы нужно щелкнуть правой клавишей мыши на свободном месте формы). Закончите работу программы, щелкнув на команде меню "Конец".

21. Запрограммируйте команду "Протабулировать".

Свойство Lines объекта типа Memo есть комплексным, то есть также есть объектом со своими свойствами и методами. Результат работы этой программы - это таблица, которая состоит из нескольких строк. Чтобы прибавить в поле Memo1 новую строку таблицы, надо изменить значения комплексного свойства Lines (строки) с помощью его метода Append (вставить) с одним аргументом - символьной строкой: Memo1->Lines->Append (строка символов). Выполните команду "Протабулировать" из главного меню, щелкнув на ней один раз. Появится заготовка функции, которую заполните так:

 

void_fastcall TForm1::N3Click(TObject *Sender)

{

float x, y;

float а = StrToFloat(Edit1 -> Text); // Получаем числовое значение левой границы

float b = StrToFloat(Edit2 -> Text); // и правой границы

float h = StrToFloat(Edit3 -> Text); // Получаем числовое значение шага

Memo1 ->Lines->Append("X\tY"); // В объект Memo1

//вставляем строку с подписями столбцов //аргумента X и значения функции Y через //табулятор \t.

//Начинаем табулировать с левой границы,

// пока аргумент x не превысит правую //границу //с определенным допуском:

for (x = a; x < b + h / 2; x += h)

{

y = sin(x); // Вычисляем значение функции

if (CheckBox1 -> Checked) // Если стоит флажок "На экран"

// Формируем и вставляем в поле Memo1 символьные строки из аргумента

// и значения функции

Memo1 -> Lines -> Append(FloatToStrF(x, ffFixed, 2, 2) + '\t' +FloatToStrF(y, ffFixed, 2, 2));

}

 
 


22. Выполните программу и поэкспериментируйте с разными значениями левой, правой границы и шага аргумента. Закройте окно программы "Табулирование функции".

Сохраните созданную программу в своей папке.

Создайте exe-файл вашей программы.

25. Закройте C++ Builder, запустите созданную программу и выполните вычисления для разных начальных данных.

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


Задания

1. Прибавьте к контекстному меню команду "Конец" и запрограммируйте ее.

2. Создайте еще одно контекстное меню с командами "Снять все флажки", "Установить все флажки", "Установить инверсионно" и запрограммируйте его. Такое меню может появляться после щелканья правой кнопкой мыши на произвольном месте панели с флажками. Не забудьте "привязать" это меню (PopupMenu2) к панели с флажками.

3. Модифицируйте реализацию программы, предусмотрев возможность табулирования функции и ее производной. Выбор варианта табулирования (с производной или без нее) осуществите с помощью дополнительного флажка.

Подсказка. Выполните такие действия:

  • вставьте в форму объект типа CheckBox (флажок), свойству Caption просвойте значение «Производная»;
  • измените программный код команды «Протабулировать».

4. Определите количество элементов массива больших, чем 0,5, и меньших, чем 1.

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

Подсказка. В теле функции Button1Click, что описывает программный код кнопки "Протабулировать", воспользуйтесь командами:

max = sin(a) + 1; // В начале функции:

...

if (max < у) max = у;// В цикле табулирования:

6. Измените функции команды "Протабулировать" так, чтобы для включенного флажка "В массив" вывод результатов выполнялся в одномерный массив.

7. Вставьте в форму объект Chart из закладки Aditional для построения графика функции:

 

 

 

 


Дважды щелкните на нем и на закладке Series, щелкнув на кнопке Add, в окне TeeChart Gallery, выберите пиктограмму нужного графика. Набору данных, который будет отвечать этому типу графика, присвоится

 

 

стандартное имя Seriesl. Поставьте или сохраните флажок 3D по собственному желанию => Ok. Поэкспериментируйте с разными закладками окна Editing Chartl. Создайте дополнительный пункт меню или вставьте кнопку "Нарисовать график" для получения графика и запрограммируйте (например, кнопку) так:

 

void_fastcall TForm1::N8Click(TObject *Sender)

{

float а = StrToFloat(Edit1->Text); // Получаем числовое значение левой границы

float b = StrToRoat(Edit2->Text); // и правой границы

float h = StrToFloat(Edit3->Text); // Получаем числовое значение шага

for (float x = a; x < b; x += h)

{Series1->Add(sin(x), FloatToStr(x,ffFixed,2,2), clRed);}

 
 


Поэкспериментируйте с разными закладками окна Editing Chartl, каждый раз запуская программу на выполнение. Заберите легенду (Legend), маркеры (Points) и подписи к ним (Marks). Придумайте и вставьте (Title) и подпись (Foot) к графику.

8. Совместите построение графика с табулированием функции.

 

 

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

СОЗДАНИЕ УЧЕБНОЙ ПРОГРАММЫ



Поделиться:


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

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