Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
65
Добавлен:
31.03.2015
Размер:
532.99 Кб
Скачать

2. Задание и рекомендации по его выполнению

  1. Следуя §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. Следуя §1.2 [3], измените приложение п. 1 так, чтобы оно скла­ды­вало два числа.

  2. Руководствуясь §1.3 [3], добавьте в оконное приложение главное и контекст­ное (всплывающее) меню.

  3. Модифицируйте оконное приложение, используя вместо процедуры valпре­образования строки в число функциюStrToFloat, а вместо процедурыstrпре­образования числа в строку функциюFloatToStr2. Как ими пользоваться, уз­найте из справочной системы Delphi. Для вызова справки по некоторому слову в программе, достаточно поставить внутрь этого слова курсор и на­жать кла­вишуF1.

  4. Разработайте и отладьте оконное приложение для решения задачи [1] 1.3.4.N+1. Чем оно будет отличаться от приложения, складывающего два числа? Обратите внимание, что правила трассировки оконных и консольных приложений одинаковы.

  5. Зафиксируйте результаты работы в отчете и покажите их препо­давателю.

ПриМер основного обработчика индивидуальнойзадачи

Условие задачи.А—начальная стоимость оборудования. В первый год экс­плуата­ции стоимость оборудования снижается наВруб., а в каждый следую­щий год снижение стоимости уменьшается нар% (относительно предыду­щего года). Определить, через сколько лет стоимость обо­рудования станет меньшеА/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;

Соседние файлы в папке ВМИП лабораторные