Урок в восьмом классе, на тему: " Цикл со счетчиком ". Урок разработан для использования, во время изучения языка программирования Lazarus. К конспекту урока прикрепленны практические разработк не входят
Тема урока: Цикл со счетчиком
Цели урока:
Обучающие:
Формирование практических навыков обработки табличных величин. Расширение представлений о методах печати поясняющей информации при выполнении программы.
Развивающие:
Воспитательные:
Тип урока: урок изучения нового материала, усвоение пройденного.
Ход урока
І. Организационный момент (приветствие учащихся).
ІІ. Актуализация опорных знаний
Что такое алгоритм?
Как запустить лазарус?
ІІІ. Мотивация урока (постановка цели урока)
Сегодня вы сможете себя почувствовать истинными программистами
ІV. Изучение нового материала
Алгоритм решения многих задач предполагает для достижения результата выполнение определенной последовательности действий несколько раз, то есть, являются циклическими.
В программе цикл может быть реализован при помощи конструкций for, while и repeat.
Оператор цикла for … do
Оператор FOR используется в том случае, когда некоторую последовательность действий надо выполнить несколько раз, причем число повторений заранее известно.
Общий вид оператора:
For <счетчик> := <нач_знач> to <кон_знач> do
Begin
<тело цикла>
End;
где:
счетчик – переменная-счетчик числа повторений;
нач_знач – выражение, определяющее начальное значение счетчика цикла;
кон_знач – выражение, определяющее конечное значение счетчика цикла;
тело цикла – операторы, которые будут повторяться.
Переменная-счетчик, выражения нач_знач и кон_знач должны быть целого типа.
Количество повторений цикла можно вычислить по формуле: кон_знач – нач_знач +1.
Если между begin и end находится только один оператор, то begin и end можно не писать.
Например, в результате выполнения следующего программного кода:
tab1:=' ';
for i:= 1 to 5 do
begin
tab1:= tab1 + IntToStr(i) + ' ' + IntToStr(i*i) + chr(13);
end;
переменная tabl будет содержать изображение таблицы квадратов чисел.
Если в операторе for вместо слова to записать downto, то после очередного выполнения тела цикла значение счетчика будет не увеличиваться, а уменьшаться.
Операторы цикла с условием while и repeat
Операторыwhile и repeat используются в том случае, когда некоторую последовательность действий надо выполнить несколько раз, причем необходимое число повторений во время разработки программы не известно и может быть определено только во время работы программы.
Оператор цикла с предусловием while .. do
Общий вид оператора:
While условие do
begin
<тело цикла>
end;
где условие – выражение логического типа, определяющее условие выполнения тела цикла. Операторы тела цикла выполняются, пока условие не станет ложным (False).
Оператор цикла с постусловием и repeat… until
Общий вид оператора:
repeat
<тело цикла>
until условие
где условие – выражение логического типа, определяющее условие завершения цикла.
Операторы тела цикла выполняются до тех пор, пока условие не станет истинным (False).
Обратите внимание на различия. В операторе while … do выход из цикла происходит тогда, когда условие станет ложным, а в операторе repeat … until – когда условие станет истинным.
V. Работа за компьютером. Инструктаж з БЖД.
Задание. Напишите программу, определяющую доход по вкладу с учетом выбранных простых или сложных процентов. Простые проценты начисляются по окончании срока вклада, сложные проценты начисляются ежемесячно и прибавляется к сумме вклада.
Ход выполнения работы
1. Загрузите Lazarus, создайте новый проект. Сохраните файлы проекта в папке Доход по вкладу.
2. Создайте интерфейс по образцу.
3. Напишите обработчик события для кнопки Вычислить.
procedure TForm1.Button1Click(Sender: TObject);
var
sum:real; // сумма вклада
pr: real; // процентная ставка
period: integer; // срок вклада
profit: real; //доход по вкладу
sum2: real; //сумма при вычислении
//методом сложных процентов
i: integer;
begin
sum:=StrToFloat(Edit1.text);
pr:=StrToFloat(Edit2.text);
period:=StrToInt(Edit3.text);
if RadioGroup1.ItemIndex=0 then
// Выбран переключатель Простые проценты
profit:=sum*(pr/100/12)*period
else
// Выбран переключатель Сложные проценты
begin
sum2:=sum;
for i:=1 to period do
sum2:= sum2+sum2*(pr/100/12);
profit:=sum2-sum;
end;
sum:=sum+profit;
Label4.Caption:='Доход: '+FloatToStrF(profit,ffFixed,8,2)
+#13+'Сумма в конце срока вклада: '+FloatToStrF(sum, ffFixed,8,2);
end;
VI. Подведение итогов, домашнее задание: