kopilkaurokov.ru - сайт для учителей

Создайте Ваш сайт учителя Курсы ПК и ППК Видеоуроки Олимпиады Вебинары для учителей

Виды циклических алгоритмов

Нажмите, чтобы узнать подробности

Дать понятия циклических алгоритмов а также научить учащихся составлять циклические алгоритмы на языке Паскаль, используя  операторы While, Repeat, For.

Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Наладить дисциплину на своих уроках.
Получить возможность работать творчески.

Просмотр содержимого документа
«Виды циклических алгоритмов»

Дата ___________ Класс ___________

Тема: «Циклические алгоритмы»


Цель: Дать понятия циклических алгоритмов а также научить учащихся составлять циклические алгоритмы на языке Паскаль, используя операторы While, Repeat, For.

Задачи:

  • Закрепить знания полученные на прошлых занятиях с операторами ветвления;

  • развитие умений использовать различные операторы цикла для решения задач;

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

Тип занятия: комбинированный

Методы обучения: объяснительно-иллюстративный, исследовательский, практический.

Оборудование и программное обеспечение:

  • интерактивная презентация по теме «Программирование циклических алгоритмов»;

  • компьютеры с инсталлированным на них пакетом Pascal ABC;

  • проектор и экран для демонстрации лекции;

  • дидактический раздаточный материал.


План урока:

  1. Организационный момент.

  2. Повторение ранее изученного материала.

  3. Объяснение задания для учащихся.

  4. Закрепление знаний.(Решение задач.)

  5. Подведение итогов урока.

  6. Домашнее задание


Ход занятия:


  1. Организационный момент (проверка присутствующих, проверка готовности к работе)


  1. Повторение ранее изученного материала

Вы уже знаете, что алгоритмы любой степени сложности состоят из трёх базовых типов алгоритмических конструкций. Назовите, пожалуйста, эти конструкции? Ответ:(следование, ветвление и цикл).

Вы умеете записывать линейные и разветвляющиеся алгоритмы на языке Паскаль. На этом уроке нам предстоит познакомиться с операторами для организации циклов. Но прежде чем мы начнём с ними знакомиться, давайте вспомним некоторые определения и понятия связанные с циклами.

Основные понятия:

  • алгоритмическая структура Цикл представляет собой последовательность команд, выполняемых многократно

  • циклические алгоритмы могут быть организованы в нескольких вариантах:

    • цикл со счётчиком (с параметром)

    • цикл с условием (предусловием и постусловием)

При разработке алгоритмов циклической структуры выделяют следующие понятия:

  • параметр (переменная цикла) – величина, с изменением значения которой связано многократное выполнение цикла

  • начальное и конечное значения параметра цикла

  • шаг параметра цикла - значение, на которое изменяется параметр цикла при каждом повторении

  • тело цикла – команды, выполняемые в цикле





З

(Цикл с предусловием)

(Цикл с постусловием)

(Цикл со счётчиком)

адание 1
: Назовите разновидность цикла представленного в виде блок-схемы


















Предусловие Цикл с параметром Цикл с постусловием


ЗНЗПЦ – задание начального значения параметра цикла

ЗИПЦ – закон изменения параметра цикла


Материал для работы с учащимися:

Запишите, пожалуйста, тему нашего сегодняшнего урока «Составление программ. Программирование циклических алгоритмов»


В языке программирования Pascal каждому виду циклов соответствует свой оператор.


Цикл с предусловием

Формат оператора:

while условие do оператор;

где условие – логическое выражение, управляющее числом повторений – вычисляется перед каждой итерацией.

Выполнение оператора while заключается в следующем: проверяется условие, - если оно выполняется (значение его – TRUE), то выполняется оператор (тело цикла), записанный после слова do, - если же условие не выполняется (значение его – FALSE), происходит выход из цикла. Процесс повторяется до тех пор, пока условие не станет ложным. Здесь в качестве условия записывается условие продолжения цикла

Цикл с постусловием

Формат оператора:

repeat

оператор1;

оператор2;

..

операторN;

until условие;

где условие – логическое выражение, управляющее числом повторений; оператор1,…операторN – операторы записанные между служебными словами repeat и until . Эти операторы составляют тело цикла. Выполнение оператора REPEAT заключается в следующем: тело цикла выполняется, затем проверяется условие. Если условие не выполняется (значение его – FALSE), снова выполняется тело цикла, затем снова проверяется условиеПроцесс повторяется до тех пор, пока условие не станет истинным (пока значение его не будет равно TRUE).

Здесь в качестве условия записывается условие выхода из цикла.


Цикл со счетчиком


Цикл с увеличением счетчика

Формат оператора:

for Счетчик  НачальноеЗначение to КонечноеЗначение do Оператор;

Цикл с уменьшением счетчика

Формат оператора:

for Счетчик  НачальноеЗначение downto КонечноеЗначение do Оператор;

Переменная, стоящая после for в операторе цикла, называется счетчиком, параметром или [управляющей] переменной цикла. Счетчик цикла – переменная порядкового типа; начальное и конечное значения счетчика, в общем случае, - выражения того же типа, что и тип счетчика. Оператор, стоящий после слова do, - тело цикла - может быть составным.


Мы познакомились с операторами языка программирования Turbo Pascal для записи циклических алгоритмов. Воспользуемся этими операторами для решения следующей задачи:

Получить таблицу температур по Цельсию от 0 до 100 градусов и их эквивалентов по шкале Фаренгейта, используя для перевода формулу .

Запишем сначала решение данной задачи, воспользовавшись «циклом с предусловием»


Program prim1;

Var Tc:integer; {температура по Цельсию тип целый}

Tf:real; {температура по Фаренгейту тип действительный}

Begin

Tc:=0;

While Tc

Begin

Tf:=9/5*Tc+32;

Writeln(Tc,Tf); Тело Цикла

Tc:=Tc+1;

End;

End.


















Запишем эту же задачу, используя «цикл со счётчиком»

Program prim2;

Var Tc:integer; {температура по Цельсию тип целый}

Tf:real; {температура по Фаренгейту тип действительный}

Begin

For Tc:=0 to 100 do

Begin

Tf:=9/5*Tc+32;

Writeln(Tc,Tf);

Tc:=Tc+1;

End;

End.






А теперь посмотрим, как наша задача решается с помощью конструкции «цикл с постусловием»


Program prim3;

Var Tc:integer; {температура по Цельсию тип целый}

Tf:real; {температура по Фаренгейту тип действительный}

Begin

Tc:=0;

Repeat

Tf:=9/5*Tc+32;

Writeln(Tc,Tf); Тело Цикла

Tc:=Tc+1;

Until Tc100 условие должно быть ложным

End.


Вы обратили внимание, что одну и ту же задачу мы записали при помощи трёх различных операторов.

Какие выводы вы можете сделать? (Можно использовать любой оператор цикла. Есть ограничения в использовании цикла For (шаг изменения параметра цикла должен быть 1 или -1. Если не известно сколько раз будет выполняться цикл, то используем While или Repeat)


      1. Закрепление знаний.


Для закрепления материала решим следующую задачу:

Получить таблицу перевода расстояния из дюймов в сантиметры для значений

длин от 1 до 50 дюймов. (1дюйм=2,54см)

Какой тип цикла оптимален для решения данной задачи? (Ответ: цикл с параметром)

Давайте нарисуем на доске блок-схему решения этой задачи с использованием структуры цикла с параметром (со счётчиком).



Запишем программу:

Program prim1;

Var d: integer;

s:real;

begin

for d:=1 to 50 do

begin

s:=d*2.54;

writeln(d:4,s:5:2);

end;

end.

















Для приведенной задачи определим, какие операторы образуют тело цикла, какая переменная является управляющей переменной цикла. Заполним таблицу:


Управляющая переменная цикла

Начальное значение

Конечное значение

Шаг изменения

Количество повторений цикла

d


1

20

1

20



Самостоятельная работа:

Переделать программу, используя другой вариант цикла (с предварительным или последующим условием). Задание выполняется на компьютерах в среде программирования Turbo Pascal (если времени недостаточно можно выполнить задание без применения компьютера).

Отчёт должен содержать:

  1. Блок-схему алгоритма решения задачи;

  2. Текст программы;

  3. Результаты работы программы. (если задание выполняется на компьютере)


Пример: Напечатать все буквы латинского алфавита.

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

PROGRAM Alfavit;

Var sim:char;

BEGIN

writeln(‘Латинский алфавит’);

For sim:=‘A’ TO ‘Z’ DO

WRITE(‘ ‘,sim)

END.









Пример: Даны действительные числа. Вычислить их среднее арифметическое.

{ среднеарифметическое}

Program CA;

var i:integer; { параметр цикла}

n: integer; { количество чисел}

s :real; { вводимое число}

t: real; { среднее арифметическое}

begin

t:=0;

writeln(‘введите количество чисел’);

read(n);

for i:=1 to n do

begin

write(‘введите число ‘);

read(s);

t:=t+s;

end;

t:=t/n;

writeln(‘------------------------------------------’);

writeln(‘среднее арифметическое=’, t:5:2);

end.









Пример: Вычислить объем каждого из нескольких шаров, а затем найти их суммарный объем. Известно, что радиус первого шара - R, радиус каждого последующего шара больше предыдущего на величину DR; радиус последнего шара - RK. Объем шара обозначим V, суммарный объем - VM. V=4/3*Pi*R3

Program Shar ;

const pi=3.14;

var

r,rk: real; (* радиус *);

v,vm: real; (* объём *);

dr:real; (* изменение радиуса *);

begin

writeln( ‘ введите начальное значение радиуса r : ‘ );

read(R);

writeln(‘ введите конечное значение радиуса rk : ‘ );

read(rk);

writeln( ‘ введите шаг изменения радиуса dr : ‘)

read(dr);

vm:=0;

while r

begin

v:=4*pi*r*r*r/3;

vm:=vm+v;

writeln(‘ r=‘ , r:6:2, ‘ ‘ :5, ‘ v=‘ , v:7:3);

r:=r+dr;

end;

Writeln (‘ **************************** ’);

Writeln(‘ общий объем VM=‘, VM:8:3)

end.



      1. Подведение итогов


Сегодня на уроке мы создавали программы с операторами для записи циклов в языке программирования Паскаль. Применили полученные знания при решении задач. Выяснили, что подавляющее большинство задач с циклами можно решать разными способами, используя при этом один из трех операторов цикла. Часто решения, использующие различные операторы цикла, оказываются равноценными. В некоторых случаях все же предпочтительнее использовать какой-то один из  операторов.

Завершите фразу:

•       Сегодня я узнал…

•       Я научился…

•       У меня получилось …

•       Было трудно…

      1. Домашнее задание

  • Выучить форматы записи операторов WHILE, REPEAT…UNTIL, FOR и правила их использования.

  • Разработать алгоритм решения задачи в виде блок-схемы и написать программу на языке программирования Turbo Pascal. Решить задачу с использованием трёх различных типов циклов.

Задача: В чайник налили воду при температуре 20°С и поставили на газ. Каждую минуту вода нагревается на 10°С. Через какое время вода закипит.



Получите в подарок сайт учителя

Предмет: Информатика

Категория: Планирование

Целевая аудитория: 8 класс.
Урок соответствует ФГОС

Скачать
Виды циклических алгоритмов

Автор: Шайхабеков Галымжан Кадыржанович

Дата: 05.02.2017

Номер свидетельства: 388001

Похожие файлы

object(ArrayObject)#851 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(76) "Программирование циклических алгоритмов"
    ["seo_title"] => string(44) "proghrammirovaniietsiklichieskikhalghoritmov"
    ["file_id"] => string(6) "276992"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(5) "uroki"
    ["date"] => string(10) "1452827739"
  }
}
object(ArrayObject)#873 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(72) "Конспект урока: Какие бывают алгоритмы "
    ["seo_title"] => string(41) "konspiekt-uroka-kakiie-byvaiut-alghoritmy"
    ["file_id"] => string(6) "149578"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(5) "uroki"
    ["date"] => string(10) "1420225679"
  }
}
object(ArrayObject)#851 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(81) "Презентация к уроку "Циклические алгоритмы" "
    ["seo_title"] => string(50) "priezientatsiia-k-uroku-tsiklichieskiie-alghoritmy"
    ["file_id"] => string(6) "172305"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(11) "presentacii"
    ["date"] => string(10) "1423806229"
  }
}
object(ArrayObject)#873 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(79) "Презентация к уроку "Циклический алгоритм" "
    ["seo_title"] => string(48) "priezientatsiia-k-uroku-tsiklichieskii-alghoritm"
    ["file_id"] => string(6) "133941"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(11) "presentacii"
    ["date"] => string(10) "1416621458"
  }
}
object(ArrayObject)#851 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(114) "Конспект урока по информатике по теме "Циклические алгоритмы" "
    ["seo_title"] => string(68) "konspiekt-uroka-po-informatikie-po-tiemie-tsiklichieskiie-alghoritmy"
    ["file_id"] => string(6) "158244"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(5) "uroki"
    ["date"] => string(10) "1421699988"
  }
}


Получите в подарок сайт учителя

Видеоуроки для учителей

Курсы для учителей

ПОЛУЧИТЕ СВИДЕТЕЛЬСТВО МГНОВЕННО

Добавить свою работу

* Свидетельство о публикации выдается БЕСПЛАТНО, СРАЗУ же после добавления Вами Вашей работы на сайт

Удобный поиск материалов для учителей

Ваш личный кабинет
Проверка свидетельства