- •Сборник практических работ
- •Практическая работа № 1 Управляющие структуры Delphi. Программирование линейных алгоритмов.
- •Усвоить применение компонентов Label, Edit, Button и BitBtn.
- •Получить практические навыки программирования линейных алгоритмов в Delphi.
- •Практическая работа № 2 Управляющие структуры Delphi. Программирование ветвящихся алгоритмов. Инструкция If
- •Изучить структуру простого проекта на языке Delphi.
- •Усвоить применение инструкции if.
- •Практическая работа № 3 Реализация ветвящихся алгоритмов для решения прикладных задач
- •Получить практические навыки работы с ветвящимися алгоритмами в Delphi.
- •Практическая работа № 4 Использование визуальных компонентов Delphi для организации структуры ветвления:
- •Получить практические навыки работы с ветвящимися алгоритмами в Delphi.
- •Усвоить применение компонента RadioButton.
- •Усвоить применение компонента RadioGroup.
- •Группа переключателей RadioGroup
- •0:MessageDlg('Внимание! Не выбран ни один цвет!',mtInformation,[mbOk],0);
- •Практическая работа № 5 Использование визуальных компонентов Delphi для работы со списками –
- •Получить практические навыки работы с ветвящимися алгоритмами в Delphi.
- •Усвоить применение компонента ListBox.
- •Усвоить применение компонента ComboBox.
- •Практическая работа № 6 Использование циклических структур в Delphi
- •Получить практические навыки работы с циклическими алгоритмами в Delphi.
- •Закрепить практические навыки применения компонентов ListBox, ComboBox.
- •Закрепить практические навыки применения компонентов RadioButton, RadioGroup.
- •Формат записи оператора Repeat…until:
- •Практическая работа № 7 Разработка простейшего приложения типа «Калькулятор»
- •Закрепить практические навыки применения компонентов страницы Standart.
- •Закрепить практические навыки написания обработчиков простейших событий.
- •Практическая работа № 8 Разработка приложения для обработки массива
- •Освоить работу с массивами.
- •Усвоить применение компонента StringGrid.
- •Практическая работа № 9 Разработка простейшего графического редактора
- •Порядок выполнения
- •Практическая работа № 10 Разработка приложений с использованием компонентов Shape и Image
- •Порядок выполнения
Практическая работа № 6 Использование циклических структур в Delphi
Цель работы:
Получить практические навыки работы с циклическими алгоритмами в Delphi.
Закрепить практические навыки применения компонентов ListBox, ComboBox.
Закрепить практические навыки применения компонентов RadioButton, RadioGroup.
Краткие теоретические сведения
Оператор while (пока) называют оператором цикла с предусловием за то, что проверка условия выполнения тела цикла производится в самом начале оператора
Формат записи:
while <условие продолжения повторений> do <тело цикла>;
где –
условие — булевское выражение,
тело цикла — простой или составной оператор.
Перед каждым выполнением тела цикла вычисляется значение выражения условия. Если результат равен Тгuе, тело цикла выполняется и снова вычисляется выражение условия. Если результат равен False, происходят выход из цикла и переход к первому после while оператору.
Оператор повтора repeat аналогичен оператору while, но отличается от него, во-первых, тем, что условие проверяется после очередного выполнения операторов тела цикла (очередной итерации) и таким образом гарантируется хотя бы однократное выполнение цикла, а во-вторых, тем, что критерием прекращения цикла является равенство логического выражения константе Тгuе, т.е. необходимо прописать условие выхода из цикла. За это цикл repeat часто называют циклом с постусловием, или циклом "ДО", так как он прекращает выполняться, как только значение выражения условия, записанного после слова until, равно True (истина).
Формат записи оператора Repeat…until:
Repeat
<оператор1>;
<оператор2>;
…
<операторN>
until <условие окончания цикла>;
Операторы, заключенные между словами repeat …. Until, являются телом цикла. Вначале выполняется тело цикла, затем проверяется условие выхода из цикла. Именно поэтому цикл, организованный с помощью оператора repeat, в любом случае выполниться один раз. Если условие будет ложно, то выполниться цикл, если истинно – произойдет выход из цикла.
Задание 1.
Разработать программу, которая определяет, является ли введенное пользователем число простым. Дизайн формы может иметь примерный вид:
Порядок выполнения
Расположите на форме следующие компоненты: Edit1; Button1; Label1; Label2. Переименуйте соответственно заголовки компонентов.
Создайте обработчик событий для компонента Button1 (Проверить) onClick:
procedure TForm1.Button1Click(Sender: TObject);
var
n: integer; { проверяемое число }
d: integer; { делитель }
r: integer; { остаток от деления n на d}
begin
n:=StrToInt(Edit1.text);
d := 2; { сначала будем делить на два }
repeat
r := n mod d;
if r <> 0 { если остаток не равен нулю, то увеличим делитель на единицу }
then d := d + 1;
until r = 0; { повторять пока не найдено число, на которое n делится без остатка }
label2.caption:=Edit1.text;
if d = n
then label2.caption:=label2.caption + ' - простое число.'
else label2.caption:=label2.caption + ' - обычное число.';
end;
end.
Сохраните форму и проект (File / Save all)
Выполните Ваш проект (Run / Run)
Задание 2 (дополнительное для самостоятельного выполнения)
Разработать программу, которая позволяет для введенного пользователем числа:
Определить, является ли оно кратным числам 2, 3, 4
Определить, является ли оно простым
Найти обратное число (1/число)
Найти противоположное число (по знаку).
На форме должны присутствовать следующие компоненты: ListBox, ComboBox, RadioButton (или RadioGroup).
Дизайн формы может иметь примерный вид:
Содержание отчета:
Постановка задачи
Тексты процедур – обработчиков событий, разработанных в приложении Delphi
Контрольные вопросы:
Для чего используется визуальный компонент ListBox?
Чем отличается визуальный компонент ComboBox от компонента ListBox?
Для чего используется визуальный компонент RadioButton?
Для чего используется визуальный компонент RadioGroup?
Каково назначение свойства Items компонентов ListBox и ComboBox?
Каково назначение свойства ItemIndex компонентов ListBox и ComboBox?
Литература:
В.Попов. Паскаль и Дельфи.— СПб.: Питер, 2003.
Фаронов В.В. Система программирования Delphi. – СПб.: БХВ-Петербург, 2003.