Задача табулирования функции — КиберПедия 

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Задача табулирования функции

2021-05-27 24
Задача табулирования функции 0.00 из 5.00 0 оценок
Заказать работу

ПРОЕКТ ПРИЛОЖЕНИЯ № 3.

ЗАДАЧА ТАБУЛИРОВАНИЯ ФУНКЦИИ

 

Объекты Memo, MainMenu, PopupMenu, CheckBox, GroupBox. Программирование циклов

Цель работы. Создать форму для решения задачи табулирования функции. Создать главное меню (объект типа MainMenu), содержащее команды: выйти из программы, табулировать функцию, очистить поля вывода результатов, а также контекстное меню (PopupMenu) с командой для очистки поля вывода. Результаты табулирования вывести в многострочное поле редактирования (объект типа Memo). Предусмотреть возможность вывода результатов на экран, в файл, в массив. Направление вывода задать с помощью трёх флажков (объектов типа CheckBox), расположенных на панели группы объектов (типа GroupBox) (см. рис. 1 ).

Теоретические сведения.

Объект Memo применяют для создания многострочного редактора текста. Кроме обычных свойств, поле редактирования Memo обладает еще такими:

Свойство Описание свойства Примеры значений
HideSelection Сохранение выделения фрагмента текста в момент потери фокуса True (выделение не сохраняется), False (сохраняется)
Lines Ввод начального текста в поле редактирования Комплексное свойство (задается в диалоговом окне)
MaxLength Максимально возможное количество введенных символов Например, 50 - пятьдесят символов, 0 - без ограничений
Scrollbars Наличие полос прокрутки ssNone (отсутствуют), ssHorizontal (горизонтальная), ssBoth (обе)

Объект CheckBox используют для создания независимого двух-или трёхпозиционного флажка: включен/выключен(/серый). Для этого объекта определены такие два новых свойства:

Свойство Описание свойства Примеры значений
AllowGrayed Наличие третьей позиции True (трёхпозиционный флажок), False (двухпозиционный флажок)
State Состояние флажка cbGrayed (серый), cbUnchecked (отключен), cbChecked (включен)

Панель группы объектов GroupBox предназначена для размещения на ней группы из нескольких объектов. Панель группы используют для улучшения дизайна окна программы. Свойства этого объекта аналогичны описанным выше.

С помощью объекта MainMenu создают главное меню программы. Вот некоторые свойства главного меню:

Свойство Описание свойства Примеры значений
Items Команды меню Комплексное свойство (задается в диалоговом окне)
Tag Вспомогательная переменная, используется в тексте программы 0; 8 (целое число)

С помощью объекта PopupMenu создают контекстное меню некоторого компонента. Для «связывания» контекстного меню с конкретным объектом необходимо свойству PopupMenu этого объекта присвоить значение имени (Name) соответствующего контекстного меню. Рассмотрим некоторые свойства контекстного меню:

Свойство Описание свойства Примеры значений
Alignment Выравнивание меню относительно точки щелчка по правой клавише мыши paCenter (по центру), paLeft (слева), paRight (справа)
AutoPopup Автоматический вызов контекстного меню True (вызовется при щелчке по правой клавише), False (вызовется с помощью метода Popup)

Конкретная команда меню (главного или контекстного) может иметь такие свойства:

Свойство Описание свойства Примеры значений
Break Разбивка меню в горизонтальном направлении mbNone (без разбивки), mbBarBreak (разбивка с вертикальной черточкой), mbBreak (разбивка без вертикальной черточки)
Shortcut Комбинация "горячих" клавиш для вызова команды меню Ctrl+A, F8, Ctrl+F10, Shift+F3, Shift+Ctrl +F11, Ctrl+Del

 

Ход работы

1. Загрузите среду визуального программирования BilderC ++.

Выровняйте вставленные поля редактирования к левому краю первого объекта и отцентрируйте текстовое поле с указанием функции, воспользовавшись окном  выравнивания Alignment.

Выделите группу полей редактирования вместе с подписями к ним и выполните команды Edit (редактировать) => Align (выровнять) => Horisontal - Left sides (горизонтально- левые границы) F=> Vertical - Space equally (вертикально - равномерно) => Ok. Выделите текстовое поле с выражением для функции и выполните команды Edit => Align => Horisontal - Center in Window (горизонтально — к центру окна) => Ok. Save All.

 

Установите флажки «На экран» и «В массив» в режим «включен».

Для этого выделите эти объекты и смените значения их свойств Checked (контроль выбора) на True.

Самостоятельная работа

Задача 3.1. Добавьте к контекстному меню команду «Выход» и запрограммируйте ее.

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

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

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

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

• поменяйте программный код кнопки «Табулировать», использовав в тексте процедуры ButtonlClick такие команды:

if (CheckBox4->Checked) Memo1->Lines->Add("  X          F(X)          F ‘(X) ");

//Строка содержит подписи для столбцов значений аргумента, функции и ее производной

  else

// Иначеёсли флажок не установлен Строка содержит лишъ подписи для столбцов значений аргумента и функции

Memo1->Lines->Add(" X F(X)"); • * •

Затем в содержимое тела цикла необходимо внести изменения

// После вычисления значение функции y, добавляем вычисление производной y 1

yl:=cos(x);                  // Вычисляем значение производной

if (CheckBox4->Checked) Memo1->Lines->Add(" "+FloatToStrF(x,ffFixed,10,2)+"  "+FloatToStrF(y,ffFixed,8,2)+” “+ FloatToStrF(y1,ffFixed,8,2));

else

//Если флажок не установлен]

Memo1->Lines->Add(" "+FloatToStrF(x,ffFixed,10,2)+"  "+FloatToStrF(y,ffFixed,8,2));

Замечание. Номера объектов в Вашей программе могут отличаться от приведённых выше.

Задача 3.4. Вставьте в форму объект Chart из закладки Additional для построения графика функции.

 

 

Щелкните два раза на объекте, появится следующее окно

Выберите команду Add…на кнопке справа

 

Выберите тип диаграммы, например FastLine

Получится следующее окно

 

Закройте его по клавише Close

Появится окно формы с видом

 

 

Теперь в текст программы добавьте команду

Из пункта 22.

В конце цикла  while, перед командой увеличения аргумента на шаг добавить

Series1->AddXY(x,y);

 

ПРОЕКТ ПРИЛОЖЕНИЯ № 3.

ЗАДАЧА ТАБУЛИРОВАНИЯ ФУНКЦИИ

 


Поделиться с друзьями:

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.021 с.