Объектно-ориентированное программирование в среде LAZARUS.
Дидактические материалы.
Сборник проектов для практических работ.
7-11 класс.
LAZARUS – свободно распространяемый продукт, аналог DELPHI, поэтому можно использовать учебники и видеоуроки именно DELPHI (для LAZARUS практически ничего нет).
Изучение объектно-ориентированного программирования в среде LAZARUS желательно после программирования в Pascal. Тогда уроки 0 и 01 идут без отметки, для знакомства с ООП.
Можно изучать программирование сразу на LAZARUS и тогда уроки 0 и 01 уже будут зачетными.
На первом этапе можно остановиться на проекте 3 «Фигуры», так как проект 4 «Движение по окружности» достаточно сложный и требует определенной математической подготовки. Обучающиеся могут, конечно, просто переписать все формулы с листа с заданием, но гораздо лучше все же понимать как именно были проведены вычисления.
Предложенные проекты предусматривают как базовую часть для получения зачета, так и задания для самостоятельной работы. Оценка работы зависит от уровня подготовки и времени.
Введение.
Урок 0. Первый проект.
Знакомство с объектно-ориентированным программированием.
Объекты и классы.
Свойства и методы.
Графический интерфейс.
Урок 01. Свойства видимости и активности.
Урок 1. Вставка картинок с использованием Image.
Вставка картинок из графического редактора Paint (обратите внимание на размер рабочей области при сохранении рисунка).
Урок 2. Калькулятор.
Объявление переменных. Типы числовых данных.
Способы перевода теста в число и обратно.
Условный оператор. Полная и неполная форма.
Урок 3. Фигуры.
Фигуры. Свойства.
Палитра цветов.
Урок 4. Движение по окружности.
Математическая и компьютерная система координат.
Полярная система координат.
Можно добавить движение еще одного круга вокруг уже вращающегося, изменив направление движения.
Далее при наличии времени обучающиеся выполняют уже самостоятельные проекты. Выбор темы зависит от уровня подготовки и профиля класса.
Lazarus Урок 2
Калькулятор
Form1
lb_x
lb_y
lb_Result
bt_Plus
bt_Minus
bt_Mult
bt_Dev
bt_Clear
bt_Exit
Edit_x
Edit_y
Edit_Result
Калькулятор
Число Х
Число Y
Ответ
X + Y
X - Y
X * Y
X / Y
Выход
Сброс
Форма
Name Form1
Caption Калкулятор
TLabel (Standart)
Name lb_x
Caption Число Х
Font ….
TLabel (Standart)
Name lb_y
Caption Число Y
Font ….
TLabel (Standart)
Name lb_Result
Caption Ответ
Font ….
TEdit (Standart)
Name Edit_x
Text (Все удалить)
Font ….
TEdit (Standart)
Name Edit_y
Text (Все удалить)
Font ….
TEdit (Standart)
Name Edit_Result
Text (Все удалить)
Font ….
TBitBtn (Additional)
Name bt_Plus
Caption X + Y
TBitBtn (Additional)
Name bt_Minus
Caption X - Y
TBitBtn (Additional)
Name bt_Mult
Caption X * Y
TBitBtn (Additional)
Name bt_Dev
Caption X / Y
TBitBtn (Additional)
Name bt_Exit
Caption Выход
13. TBitBtn (Additional)
Name bt_Clear
Caption Сброс
II. 1. var
Form1: TForm1;
x,y,z: real;
2. procedure TForm1.bt_PlusClick(Sender: TObject);
begin
x:=StrToFloat(Edit_x.Text);
y:=StrToFloat (Edit_y.Text);
z:=x+y;
Edit_Result.Text:=FloatToStr(z);
end;
3. procedure TForm1.bt_ExitClick(Sender: TObject);
begin
close;
end;
4. procedure TForm1.bt_ClearClick(Sender: TObject);
begin
Edit_x.Text:='';
Edit_y.Text:='';
Edit_Result.Text:='';
end;
5. Самостоятельно дописать процедуры для кнопок bt_Mult, bt_Mult, bt_Dev. Для деления предусмотреть деление на нуль с выводом в окно ответа записи «на нуль делить нельзя».
6. Добавить в разделе объявления переменных (var)
k1, k2: integer;
Функция Val производит проверку ввода чисел, преобразуя строку текста в число. Если введены вещественные числа, то параметры k1 , k2 примут значения нуль, если окно пустое или введены буквенные выражения - то значения, отличные от нуля.
Измените процедуру для кнопки сложения:
procedure TForm1.bt_PlusClick(Sender: TObject);
begin
Val(Edit_x.Text,x,k1);
Val(Edit_y.Text,y,k2);
if (k1=0) and (k2=0) then
begin
z:=x+y;
Edit_Result.Text:=FloatToStr(z);
end
else
Edit_result.Text:='Введите числа';
end;
Можно добавить метку TLabel для вывода сообщения «введите числа».
Использовать свойство Visible для метки.