- •Реализация алгоритмов в среде Delphi Сборник заданий для лабораторных работ
- •Введение
- •Лабораторная работа №1. Реализация простейших циклических алгоритмов в консольном приложении среды Delphi
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •Лабораторная работа №2. Решение задач обработки массивов в консольном приложении среды Delphi
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •Лабораторная работа №3. Проектирование алгоритмов с использованием подпрограмм и их отладка в консольном приложении
- •Лабораторная работа №4. Решение задач с параметрами-подпрограммами и модулями в консольном приложении Delphi
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •Лабораторная работа №5. Разработка простейших оконных приложений в среде Delphi
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •ПриМер основного обработчика индивидуальной задачи
- •Лабораторная работа №6. Создание оконных приложений обработки матриц в среде Delphi
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •ПриМер обработчиков приложения индивидуальной задачи
- •Лабораторная работа №7. Программирование открытия и сохранения файлов с использованием стандартных диалоговых окон
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •ПриМер обработчиков приложения индивидуальной задачи
- •Лабораторная работа №8. Разработка оконных приложений, использующих автономные модули
- •1. Подготовка к работе
- •2. Задание и рекомендации по его выполнению
- •ПриМер автономного модуля
- •Некоторые обработчики приложения, вычисляющего сумму элементов одномерного массива
- •Лабораторная работа №9. Разработка оконных приложений, осуществляющих графический вывод
- •1. Подготовка к работе
- •Задание и рекомендации по его выполнению
- •Пример обработчика вывода графических примитивов
- •Пример обработчика, формирующего массивы координат точек серий для вывода графиков функций с помощью Chart
- •Лабораторная работа №10. Обработка исключительных ситуаций
- •1. Подготовка к работе
- •Приложение 2. Пример проекта отчета по оконному приложению Условие
- •Состав данных
- •Э скиз основной формы приложения Программный код основного обработчика
- •Библиографический список
2. Задание и рекомендации по его выполнению
Следуя §1.2 пособия [3], создайте оконное приложение, выполняющее сцепление двух строк. Сохраните это приложение, учитывая, что каждое оконное приложение необходимо хранить в отдельной папке.
Обратите внимание, что с окном сохранения приходится работать дважды – для файла проекта и для файла формы. Файлу проекта среда Delphi автоматически присваивает имя Project1 (или Project2, Project3, …) и расширение .dpr. Файлу формы автоматически дается имя Unit1 (или Unit2, Unit3, …) и расширение .pas. Эти имена можно изменить, но делать это надо очень внимательно (чтобы не перепутать проект и форму и по другим причинам). Кроме файлов Project.dpr и Unit.pas, среда создает еще несколько файлов проекта и формы с разными расширениями. При переносе проекта приложения на другой компьютер или в другую папку, необходимо переносить только файла проекта Project.dpr и два файла для каждой формы: Unit.pas и Unit.dfm. Все остальные файлы при открытии проекта приложения будут созданы средой Delphi1. Отметим, что файл Unit.dfm хранит графическое изображение формы в текстовом виде; файл Project.exe является исполняемым файлом, который можно запускать независимо от среды Delphi.
Открывать проект приложения следует командой File/Open Project, и в окне открытия файла выбирать файл с расширением .dpr.
Следуя §1.2 [3], измените приложение п. 1 так, чтобы оно складывало два числа.
Руководствуясь §1.3 [3], добавьте в оконное приложение главное и контекстное (всплывающее) меню.
Модифицируйте оконное приложение, используя вместо процедуры val преобразования строки в число функцию StrToFloat, а вместо процедуры str преобразования числа в строку функцию FloatToStr2. Как ими пользоваться, узнайте из справочной системы Delphi. Для вызова справки по некоторому слову в программе, достаточно поставить внутрь этого слова курсор и нажать клавишу F1.
Разработайте и отладьте оконное приложение для решения задачи [1] 1.3.4.N+1. Чем оно будет отличаться от приложения, складывающего два числа? Обратите внимание, что правила трассировки оконных и консольных приложений одинаковы.
Зафиксируйте результаты работы в отчете и покажите их преподавателю.
ПриМер основного обработчика индивидуальной задачи
Условие задачи. А—начальная стоимость оборудования. В первый год эксплуатации стоимость оборудования снижается на В руб., а в каждый следующий год снижение стоимости уменьшается на р % (относительно предыдущего года). Определить, через сколько лет стоимость оборудования станет меньше А/2. Рассматривать срок не более N лет.
Н
а
рис. 4 приведена форма приложения.
Обратите внимание, что каждое
текстовое окно на форме нужно либо
для ввода исходного данного, либо для
вывода результата. Далее приведен
текст обработчика события – нажатия
кнопки «Вычисление».
procedure TForm1.Button1Click(Sender: TObject);
Var A,B,p:real; N,i:integer; {i-счетчик лет }
At,Bt:real; {текущие значения стоимости оборудования и ее снижения}
begin A:=StrToFloat(Edit1.Text);{эти операторы считывают c}
B:=StrToFloat(Edit2.Text);{формы исходные данные, это замена }
p:=StrToFloat(Edit3.Text); N:=StrToInt(Edit4.Text);{операторов ввода}
At:=A;Bt:=B;i:=1;{подготовка цикла}
while (At>=A/2) and (i<=N) do{цикл продолжается пока}
begin { снижение не достигнуто и срок не прошел}
At:=At-Bt; {ежегодно стоимость снижается на Bt}
Bt:=Bt-Bt*p/100; {ежегодно Bt уменьшается на р%}
i:=i+1 {увеличение счетчика лет}
end;
if At<A/2 then {анализ приоритетного условия выхода из цикла}
begin i:=i-1; Edit5.Text:=IntToStr(i){это аналог вывода}end else
Edit5.Text:='за '+IntToStr(N)+' лет снижения нет';{это аналог вывода}
end;
