- •Оглавление Оглавление
- •Теоретические основы Визуального программирования.
- •Лабораторная работа №1 Знакомство со средой Dеlphi.
- •Лабораторная работа №2. Объекты: Кнопка. Label
- •Лабораторная работа № 3. Свойства Объектов.
- •Лабораторная работа № 4. Программирование линейной структуры
- •Лабораторная работа №5. Оператор ветвление в дельфи..
- •Лабораторная работа №6. Оператор ветвление в дельфи.
- •Лабораторная работа № 7 Программа "Квадратное уравнение"
- •Лабораторная работа № 8 «Программы с циклами в Delphi»
- •Лабораторная работа № 9 «Программа "Вклад"»
- •Лабораторная работа № 10 «Целочисленный Калькулятор».
- •Лабораторная работа № 11 «Графика в Дельфи».
- •Вывод текста
- •Лабораторная работа № 1? «Графика в цикле».
- •Лабораторная работа № 1? «Графика в цикле». ?????????
- •Лаб работа . Дополнительный материал по теме графика.
- •Лабораторная работа №12. Обработка событий в графике.
- •Лабораторная работа № 13 «Графика в Дельфи».
- •Лабораторная работа № 14 «Графика в Дельфи». Продолжение
- •Лабораторная работа № Светофор
- •Лабораторная работа № Летающий шарик.
- •Лабораторная работа Вывод графиков функций в Delphi
- •Лабораторная работа Построение графиков в среде Delphi.
- •Лабораторная работа № Метод базовой точки. Кораблик
- •Лабораторная работа № Метод базовой точки. Машина
- •Лабораторная работа Битовые образы
- •Самостоятельные программы
- •1. События и обработка событий
- •14. Работа с графикой в окне формы
Лабораторная работа №5. Оператор ветвление в дельфи..
программа "Test"
Цель: Научиться составлять программы с оператором ветвления. Познакомится и объектами панель, радиокнопка.
Программист, ложась спать, ставит возле кровати 2 стакана:
один с водой, если захочет пить, а другой пустой, если не захочет.
Из программистского юмора
Наша жизнь полна неожиданностей и условностей. Каждый день приходится решать тысячи мелких задач, делая выбор. Реальная задача - переход улицы, на которой работает светофор.
Вот как выглядит эта задача на языке блок-схем:
|
рис. 1 |
На естественном языке такая конструкция выглядит так:
Если горит зелёный, то иду, иначе стою.
Или, в общем виде:
Если <условие>
то <ветвь "Да">
иначе <ветвь "нет">
А оператор называется Если…то… иначе…. На языке программирования этот оператор звучит следующим образом: IF…THEN…ELSE….
IF <условие>
THEN <ветвь "Да">
ELSE <ветвь "Нет">
А поскольку в любой ветви может быть не один, а несколько шагов, то их необходимо оформить в виде отдельной подпрограммы (записать между begin и end), т.е.
IF <условие> |
Если горит зелёный |
THEN |
То |
Begin |
Begin |
<ветвь "Да"> |
иди |
End |
End |
ELSE |
ELSE |
Begin |
Begin |
<ветвь "Нет"> |
стой |
End |
End |
Оказывается, ни одна серьезная программа не обходится без этого оператора. А как с ним работать, мы разберемся на примере решения следующей задачи: напишем вариант шаблон для теста, т.е. как работает обычный тест
Запустите Delphi.
Сделайте вашу по
ниже приведенному образцу форму используя
на вкладке Standard (Стандартные) палитры
компонентов объекты Button,
Label,
GroupBox
– кнопка
и RadioButton
– кнопка
.
рис. 2 рис. 3
Чтобы слова в компонентах Label располагались не в одной, а в нескольких строчках нужно прежде, чем набирать текст, свойство объекта WordWrap сделайте равным True.
Начинаем программирование.
Пользователь выбирает ответ из предложенных, затем нажимает кнопку Проверить. Программа проверяет, правильно ли выбраны ответы. Если дан правильный ответ - выводим ответ «Верно» и отключаем кнопку "Проверка", Иначе - соответствующий ответ и даем возможность продолжить тест. Значит, программировать необходимо кнопку Проверить.
Дважды щелкните на кнопке «Проверить» и откройте окно редактора кода.
рис. 5
Д
ля
этого оператора есть правило: если между
begin…end стоит один оператор, то строки
begin…end можно опустить. В нашем случае,
по ветви "ДА" - 2 оператора, по ветви
"НЕТ"- 1 оператор, следовательно,
во втором случае begin…end можно убрать. И
тогда код будет выглядеть следующим
образом:
procedure TForm1.Button1Click(Sender: TObject);
begin
if radioButton3.Checked
then
Begin
label1.Caption:='Верно';
button1.Enabled:=False;
End
else
label1.Caption:=' Ошибка';
end;
Самостоятельно:
Сделайте тест, состоящий из трех вопросов, например, такой:
