Lab#05


Чтобы посмотреть этот PDF файл с форматированием и разметкой, скачайте его и откройте на своем компьютере.
Лабораторная работа №
5



1

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

Использование управляющих конструкций
.


Цель работы:
Изучить свойства
списков
. Научиться использовать
условный

оператор

SWITCH
.


Постановки задачи

Составить Блок

Схему и написать программу для
выполнения операций между двумя
числами
:
A

B
;
A

B
;
A
*
B
;
A
/
B
;
A
B
;
A
*
cos
(
B
);
A
*
sin
(
B
);
A
*
e
B
.


Общие сведения

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

Преимущество этого опер
атора пред
IF

состоит в том, что программа приобретает более
наглядный (понятный) вид.

Оператор выбора имеет следующую структуру:

CASE
<
выражение
>
OF

<
список значений 1
>: <
оператор 1
>;

<
список значений
2>: <
оператор
2>;



<
список значений
N
>: <
опе
ратор
N
>;

ELSE
<
оператор
>
END
;


Действие оператора
: если значение выражения совпадает со значением какого

то списка
значений, то выполняется соответствующий оператор, а другие операторы не выполняются.
Список значений может состоять из одного или нескольки
х элементов, разделенных запятой,
также
,
модна указывать диапазон значений через две точки, например, диапазон от
0 до 3
в списке
значений оператора
CASE

необходимо указать следующим образом
0..3
:
.

Если совпадений не
найдено, тогда выполняется оператор по
сле
ELSE
.

Выражение
оператора

CASE

может содержать имя переменной или математическое
выражение. Если у вас после
списка значений
необходимо выполнить несколько операторов,
тогда этот составной оператор берется в операторные скобки (
begin

end
;
).



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



2

Блок

С
хема

При составлении Блок

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

При использовании условных операторов ветви должны быть подписаны соответствующим
текстом. Тупиковые ветви не
допускаются
.












































Рисунок 1

Блок

Схема решения квадратного уравнения

B
e
A
z


Re

B
A
z


Re

начало

Ввод
A
,
B,N

N
0

N1

Вывод
Rez

конец

Да

Нет

B
A
z


Re

Да

N
3

Нет

0
Re

z

Да

N
4

Нет

B
A
z

Re

Да

N
5

Нет

)
cos(
Re
B
A
z



Да

N
6

Нет

)
sin(
Re
B
A
z



Да

Нет

B0

B
A
z
/
Re


Да

Нет

N2

B
A
z
*
Re


Да

Нет

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



3

Пояснения к выполнению

Создание внешнего вида

Запустите
Delphi
.

Установите на Форму следующие объекты:

Panel
1


для ввода данных. И эта панель должна быть расположена в верхней части Формы.
Для этого
в свойстве
Align

установите
alTop
.
Panel
2



для управляющих кнопок. И эта панель
должна быть расположена в правой части
Panel
1. Для этого в свойстве
Align

установите
alRight
.
GroupBox
1

будет содержать поле вывода многострочного текста
Memo
1.
У к
а
ждого из
этих двух
объектов свойство
Align

должно быть установлено
alClient
.

Вы должны получить внешний вид
программы, который представлен на рисунке 2.

Измените текст в заголовке программы на «
Лабораторная робота №
5
»
, используя свойство
Caption

Формы.
Измените т
екст у
GroupBox
1
на «Результат Вычислений».
Удалите тексты с
Panel
1
и
Panel
2, используя их свойства
Caption
.
В
Panel
1
добавьте три метки (
Label
)

для
обозначения полей. Так же установите два поля ввода однострочного текста (
Edit
)
и один
открывающийся список
(
ComboBox
).
В
Panel
2

установите три кнопки (
Button
).

Переименуйте
Memo
1
в
MemoRez
.
Измените размер формы так, чтобы не было много пустого пространства. У
Вас должен получиться внешний вид, как на рисунке 3.




Рисунок 2

Расположение
объектов на Форме


Рисунок 3

Вид формы с
введенными изменениями


Рисунок 4

Вид формы с
введенными изменениями


Измените текст у
Label
1
и
Label
3

на

А

и

В

соответственно. А у
Label
2


«действие»
.

ComboBox
1
п
ере
именуйте в
ComboBoxOper
,
т.к.
открывающийся список буд
ет содержать
перечень операций.
Так же переименуйте кнопки в соответствии с их функциональным
назначением.
Н
апример,
Button
1
в
ButtonCalc



выполнить расчет
,
а
Button
2

в
ButtonClear



очистить поле вывода
результата

и
Button
3

в
ButtonClose


закрыть програ
мму.

Полученный

внешний вид
должен соответствовать рисунку 4.

Рассмотрим подробнее
ComboBoxOper
. Это открывающийся список, который должен
содержать перечень операций. Для ввода этих данных необходимо кликнуть на
ComboBoxOper
и в
свойствах выбрать
Items
. Напротив появится кнопка с тремя точками, если на эту кнопку нажать,
то станет доступно окно редактора
String

List

Editor
, в котором вводят нужн
ую
информаци
ю
.
Текст, который Вам нужно ввести, представлен на рисунке 5.

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



4


Рисунок
5



Редактирование
ComboBo
xOper

Т.к. у нас строго предусмотрено количество операций, то пользователь не может изменять
ни их количество

и текст. Поэтому у
ComboBoxOper
свойство
Style

должно быть установлено на
csDropDownList
. Установить первую запись по умолчанию можно при помощи с
войства
ItemIndex

равного 0, т.к.
нумерация
строк начинается с нуля (смотри рисунок 6)


Рисунок
6



Работа с

ComboBoxOper

Для того, чтобы при активации формы поля ввода данных были обнулены, а поле вывода
результатов расчета

очищена, необходимо активиро
вать событие Формы
OnActivate
.
Пример
реализации поставленной задачи представлен на рисунке 7.

На рисунке 8 представлено описание процедуры закрытия программы. Обратите внимание,
что перед закрытием
должно
вывестись сообщение об авторе программы, используя
стандартную
функцию
ShowMessage
.

Рисунок 9 представляет описание кнопки очистки поля вывода результатов вычислений.

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



5


Рисунок 7

Активация Формы


Рисунок 8


Закрытие программы


Рисунок 9

Очистки поля вывода результатов вычислений

Ниже представлен л
и
стинг

программы

кноп
к
и
[
Вычислить
].

В
изуально прослеживаются
отступы слева, которые формируют «блоки» взаимосвязанных операторов.

procedure
TForm1.ButtonCalcClick(Sender: TObject);


{Объявляем локальные переменные}


var
A, B, Rez : real;


var
S :
Str
ing
;


var
N : integer;

begin

{Вычислить}


{Присваиваем переменным значения}


A : StrToFloat(EditA.Text);

B : StrToFloat(EditB.Text);


{Запоминаем условное обозначение действия}

S : ComboBoxOper.Text 
'  '
;


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



6

{Определяем номер дейс
твия (операции)}

N : ComboBoxOper.ItemIndex;



case
(N)
of



0:
{A  B}


begin

S : S  EditA.Text 
'  '
 EditB.Text;

Rez : A  B;


end
;

1
:{A

B}


begin

S : S  EditA.Text 
'

'
 EditB.T
ext;

Rez : A

B;


end
;

2:
{A * B}


begin

S : S  EditA.Text 
' * '
 EditB.Text;

Rez : A * B;


end
;

3:
{A / B}


begin

S : S  EditA.Text 
' / '
 EditB.Text;


if
(B<>0)
then
R
ez : A / B


else
Rez : 0;


end
;

4:
{A ^ B}


begin

S : S  EditA.Text 
' ^ '
 EditB.Text;

Rez : exp(ln(A) * B);


end
;

5:
{A*cos(B)}


begin

S : S  EditA.Text 
' * cos('
 EditB.Text 
')'
;

Rez : A * cos(B);


end
;

6:
{A*sin(B)}


begin

S : S  EditA.Text 
' * sin('
 EditB.Text 
')'
;

Rez : A * sin(B);


end
;


else
{A*exp(B)}


begin

S : S  EditA.Text 
' * exp('
 EditB
.Text 
')'
;

Rez : A * exp(B);


end
;


end
;

S : S 
'  '
 FloatToStr(Rez);


MemoRez.Lines.Add(S);

end
;

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



7

Результат Выполнения


Рисунок
10


Результат выполнения программы


Отчет

В лабораторной работе указать цель, постановку задачи,
блок

схему и текст программы.

Сделать вывод о
проделанной
работе.


Приложенные файлы

  • pdf 1186916
    Размер файла: 744 kB Загрузок: 0

Добавить комментарий