Меню
Разработки
Разработки  /  Информатика  /  Разное  /  10 класс  /  Методический материал по информатике на тему "Реализация циклического алгоритма на Паскале"

Методический материал по информатике на тему "Реализация циклического алгоритма на Паскале"

С помощью материала можно познакомиться с записью и выработать навыки использования операторов цикла на языке программирования Паскаль, научиться оформлять таблицы и проводить трассировку фрагментов программы.
21.03.2015

Описание разработки

Цели:

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

Развивающая: развивать способность воспринимать, обрабатывать и обобщать информацию; развивать логическое, абстрактное мышление; развивать навыки самоконтроля и взаимоконтроля.

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

Структура урока:

1. Оргмомент, постановка цели урока.

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

3. Активное изучение нового материала.

4. Осмысление и применение изученного на практике.

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

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

План урока:

1. Приветствие. Объявление темы и целей урока. (Постановка проблемы. )

2. Подготовка к восприятию нового материала:

1. Какие типы алгоритмов существуют (линейный, разветвляющийся, циклический) ;

2. Какие типы алгоритмов мы уже можем реализовать на Паскале (линейный, разветвляющийся) ;

3. Когда применяется циклический алгоритм (при повторении одних и тех же действий несколько раз) ;

4. Что такое тело цикла (действия внутри цикла, именно они повторяются при исполнении алгоритма) ;

5. Типы циклических алгоритмов (рассмотрены еще при изучении записи алгоритмов в виде блок-схем: со счетчиком, с предусловием, с постусловием).

6. В алгоритме, записанном ниже, используются целочисленные переменные k и m. Определите значение переменной k после выполнения данного алгоритма:

m:= -1;

k:=2*m-2;

m:=k+2;

Методический материал по информатике на тему Реализация циклического алгоритма на Паскале

k:=k*m+5; (13)

7. Определите значение переменной p после выполнения следующего фрагмента программы: (-61)

Паскаль.

m:=13;

n:=21;

n:=2*m-n;

if m<=n then

p:=m+n

else

p:= 4-m*n;

Алгоритмический язык.

Цель повторения: определить, что мы успели понять и усвоить за предыдущие уроки, и, соответственно, ликвидировать пробелы в знаниях; закрепить знания.

3. Новый материал – совместное изучение (на партах у учащихся таблица).

Таблицы выдаются детям (и остаются у них, подклеиваются в рабочие тетради):

Операторы цикла на Паскале.

Цикл с параметром (со счетчиком).

Оператор цикла с параметром применяют тогда, когда заранее известно число повторений одной и той же последовательности операторов

Цикл с параметром по возрастающим значениям параметра

For I: = А to В do <тело цикла>;

Тело цикла – простой или составной оператор.

Составной оператор – группа операторов между begin и end.

I – переменная, порядкового типа (integer, char)

Начальное (А) и конечное (В) значения параметра цикла могут быть представлены константами, переменными или арифметическими выражениями.

Оператор цикла с параметром данного вида выполняется следующим образом- вычисляются значения выражений А и В. Если А<=В, то <параметр> последовательно принимает значения, равные А, А+1, …., В-1, В (шаг+1) и для каждого из этих значений выполняется <тело цикла>. Если А>В, то <тело цикла> не выполняется ни разу.

Весь материал - в документе.

Содержимое разработки

Тема: Реализация циклического алгоритма на Паскале.

Цели:

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

Развивающая: развивать способность воспринимать, обрабатывать и обобщать информацию; развивать логическое, абстрактное мышление; развивать навыки самоконтроля и взаимоконтроля.

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

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

Организационные формы: индивидуальная, групповая, фронтальная.

Оборудование: таблица, доска и фломастеры, мультипроектор, компьютеры, тесты.

Структура урока:

  1. Оргмомент, постановка цели урока.

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

  3. Активное изучение нового материала.

  4. Осмысление и применение изученного на практике.

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

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

Тип урока: урок закрепления известных знаний, получения новых знаний, их осмысления, закрепления, отработки, практического применения для решения задач.

План урока:

1. Приветствие. Объявление темы и целей урока. (Постановка проблемы.)

2. Подготовка к восприятию нового материала:

  1. Какие типы алгоритмов существуют (линейный, разветвляющийся, циклический);

  2. Какие типы алгоритмов мы уже можем реализовать на Паскале (линейный, разветвляющийся);

  3. Когда применяется циклический алгоритм (при повторении одних и тех же действий несколько раз);

  4. Что такое тело цикла (действия внутри цикла, именно они повторяются при исполнении алгоритма);

  5. Типы циклических алгоритмов (рассмотрены еще при изучении записи алгоритмов в виде блок-схем: со счетчиком, с предусловием, с постусловием).

  6. В алгоритме, записанном ниже, используются целочисленные переменные k и m. Определите значение переменной k после выполнения данного алгоритма:

m:= -1;

k:=2*m-2;

m:=k+2;

k:=k*m+5; (13)

  1. Определите значение переменной p после выполнения следующего фрагмента программы: (-61)

Паскаль

Алгоритмический язык

m:=13;

n:=21;

n:=2*m-n;

if m

p:=m+n

else

p:= 4-m*n;

m:=13;

n:=21;

n:=2*m-n;

если m

то p:=m+n

иначе p:= 4-m*n

все

Цель повторения: определить, что мы успели понять и усвоить за предыдущие уроки, и, соответственно, ликвидировать пробелы в знаниях; закрепить знания.

3. Новый материал – совместное изучение (на партах у учащихся таблица).

Таблицы выдаются детям (и остаются у них, подклеиваются в рабочие тетради):

Операторы цикла на Паскале

Цикл с параметром

(со счетчиком)

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

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

Оператор цикла с параметром применяют тогда, когда заранее известно число повторений одной и той же последовательности операторов

Цикл с параметром по возрастающим значениям параметра

For I: = А to В do тело цикла;

Тело цикла – простой или составной оператор.

Составной оператор – группа операторов между begin и end.

I – переменная, порядкового типа (integer, char)

Начальное (А) и конечное (В) значения параметра цикла могут быть представлены константами, переменными или арифметическими выражениями.

Оператор цикла с параметром данного вида выполняется следующим образом- вычисляются значения выражений А и В. Если А последовательно принимает значения, равные А, А+1, …., В-1, В (шаг+1) и для каждого из этих значений выполняется . Если АВ, то не выполняется ни разу.

Цикл с параметром по убывающим значениям параметра:

For I:=А downto В do тело цикла;

Параметр I меняет свое значение от А до В с шагом –1 (для целого типа),

если А

Цикл с предусловием используется тогда, когда число повторений оператора цикла заранее не известно, а задается некоторое условие продолжения цикла.


While do

;

Выполнение оператора цикла с предусловием начинается с проверки условия, записанного после слова While. Если оно соблюдается, то выполняется , затем вновь проверяется условие и т. д. Как только при очередной проверке окажется, что условие не соблюдается, выполнятся не будет.

Цикл выполняется пока условие истинно (верно), если условие сразу не верно – цикл не выполняется ни разу.

Примечание:

  1. Если состоит из нескольких операторов, то они объединяются операторными скобками.

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


Для программной реализации циклических алгоритмов с неизвестным заранее числом повторений имеется ещё один оператор – оператор цикла с постусловием, который имеет следующий вид:

Repeat

;

;

…………….

n;

Until ;{ до тех пор, пока не}

Этот оператор отличается от цикла с предусловием тем, что проверка условия производится после очередного выполнения тела цикла. Это обеспечивает выполнение цикла хотя бы один раз.

Данный оператор цикла предлагает наличие нескольких операторов в теле цикла, поэтому служебные слова Begin и End не нужны.

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

Цикл выполняется пока условие ложно.


В ходе объяснения учитель приводит примеры решения задач на все виды циклов:


Пример 1

Из чисел от 10 до 99 вывести те, сумма цифр которых равна n (0n

Вопросы для обсуждения

  1. Каким образом можно выделить последнюю (младшую) цифру числа?

  2. Каким действием можно выделить первую (старшую) цифру числа?

Обазначим через k очередное число, p1 – старшую цифру числа k, p2- младшую цифру числа k, s- сумма цифр числа k. Число k будем печатать только в том случае, когда сумма p1 и р2 будет равна s.

Решение

Program Example_9;

Var s, k, n, p1, p2: Integer;

Begin

Writeln (‘Введите целое число ’);

Readln (n);

For k:= 10 to 99 do

Begin

P1:= k div 10;

P2:= k mod 10;

S:= p1+p2;

If s=n Then writeln (k);

End;

Writeln (‘ нажмите ’);

Readln ;

End.

Трассировка примера

Рассмотрим выполнение программы в пошаговом режиме для n=2:


n

k

Р1

Р2

S

Условие s=n

2

10

1

0

1

Нет


11

1

1

2

Да


12

1

2

3

Нет



99

9

9

18

нет

В результате работы программы на экране появится 2 числа:

11

20


Пример 2

Подсчитать количество цифр заданного натурального числа n.


Решение

Подсчет количества цифр начнем с последней цифры числа. На очередном шаге цикла увеличим счетчик цифр на единицу, а число уменьшим в 10 раз (тем самым мы избавляемся от последней цифры числа). Далее с получившимся числом проделаем ту же последовательность действий и т. д. пока число не станет равным нулю.

Program Example_13;

Var m, n, k: Longint; Begin

Writeln (‘введите натуральное число’);

Readln (n);

m:= n;

k:=0;

While m0 Do

Begin

Inc (k);

m := m div 10;

End;

writeln (‘В числе ’, n,’-‘,k,’цифр’);

Readln ;

End.

Трассировка примера

Рассмотрим выполнение программы в пошаговом режиме для числа 65387:


n

m

k

65387

65387

0

65387

6538

1

65387

653

2

65387

65

3

65387

6

4

65387

0

5

В результате работы программы на экране появится предложение:

В числе 65387 – 5 цифр.


Пример 3.

Составьте программу планирования закупок в магазине на сумму, не превышающую заданную величину.

Решение

Обозначим через x и k цену и количество товара, через p- заданную предельную сумму, через s – стоимость покупки. Начальное значение общей стоимости покупки s равно нулю. Значение предельной суммы считывается с клавиатуры. Необходимо повторять запрос цены и количества выбранного товара, вычислять его стоимость, суммировать её с общей стоимостью и выводить результат на экран до тех пор, пока стоимость не превысит предельную сумму p.

Program Example_17;

Var x, k, p, s: integer; Begin

Writeln (‘Предельная сумма - ’);

Readln ( p);

s:=0;

Repeat

Writeln (‘Введите цену товара и его количество’);

Readln (x, k);

s:= s + x*k ;

writeln (‘Стоимость покупки равна ’,s);

Until s p;

Writeln (‘ Суммарная стоимость покупки превысила предельную сумму’);

Readln ;

End.

Трассировка примера

Рассмотрим выполнение программы в пошаговом режиме для суммы 100 рублей:


р

s

x

k

Условие sp

100

0

16

2



0+32=32



32100 нет



6

5



32+30=62



62100 нет



25

2



62+50=112



112100

да

В результате работы программы на экране:

Введите цену товара и его количество 16 2

Стоимость покупки равна 32

Введите цену товара и его количество 6 5

Стоимость покупки равна 62

Введите цену товара и его количество 25 2

Стоимость покупки равна 112

Суммарная стоимость покупки превысила предельную сумму


4.Осмысление и применение изученного на практике.

Задание 1. Выполнить трассировку всех трех примеров для следующих значений:

Пример 1. n=5

Пример 2. n = 2543

Пример 3. S= 250 x=100 k= 3

Задание 2.

1) Сколько раз будет выполнено тело цикла в следующих фрагментах программ:

  1. For k:= -1 to 1 do ….

  2. For k:= 10 to 20 do…

  3. For k:= 20 to 10 do …


2) Дана последовательность операторов:

a:= 1; b:=1;

While a+bDo

Begin a:=a+1; b:=b+2 End;

S:=a+b;

Сколько раз будет повторен цикл и какими будут значения переменных a, b и s

После завершения этой последовательности операторов?

3)Какое значение будет принимать переменная у после выполнения программы:

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

– Итак, мы познакомились с циклами, важнейшей составной частью большинства программ. Завершим мы тему “Циклы” решением задач на следующем уроке.

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

Выполнить по карточкам домашнюю самостоятельную работу в трёх вариантах :

Вариант 1

Составить программу, используя цикл с параметром:

Подсчитать сумму всех нечётных чисел от 230 до 430

Вариант2

Составить программу, используя цикл с предусловием:

Вычислить сумму цифр числа.

Вариант3

Напишите программу, используя цикл с постусловием для задачи:

Найти сумму цифр четырёхзначного числа.






РАЗДАТОЧНЫЙ МАТЕРИАЛ ПО ТЕМЕ «ЦИКЛЫ»


Повторение

  1. Какие типы алгоритмов существуют?

  2. Какие типы алгоритмов мы уже можем реализовать на Паскаль?

  3. Когда применяется циклический алгоритм?

  4. Что такое тело цикла?

  5. Типы циклических алгоритмов.

  6. В алгоритме, записанном ниже, используются целочисленные переменные k и m. Определите значение переменной k после выполнения данного алгоритма:

m:= -1;

k:=2*m-2;

m:=k+2;

k:=k*m+5; (13)

  1. Определите значение переменной p после выполнения следующего фрагмента программы: (-61)

Паскаль

Алгоритмический язык

m:=13;

n:=21;

n:=2*m-n;

if m

p:=m+n

else

p:= 4-m*n;

m:=13;

n:=21;

n:=2*m-n;

если mn

то p:=m+n

иначе p:= 4-m*n

все


Закрепление

Задание 1. Выполнить трассировку всех трех примеров для следующих значений:

Пример 1. n=5

Пример 2. n = 2543

Пример 3. S= 250 x=100 k= 3

Задание 2.

1) Сколько раз будет выполнено тело цикла в следующих фрагментах программ:

  1. For k:= -1 to 1 do ….

  2. For k:= 10 to 20 do…

  3. For k:= 20 to 10 do …

2) Дана последовательность операторов:

a:= 1; b:=1;

While a+bDo

Begin a:=a+1; b:=b+2 End;

S:=a+b;

Сколько раз будет повторен цикл и какими будут значения переменных a, b и s, после завершения этой последовательности операторов?

3)Какое значение будет принимать переменная у после выполнения программы:

Операторы цикла на Паскале

Цикл с параметром

(со счетчиком)

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

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

Оператор цикла с параметром применяют тогда, когда заранее известно число повторений одной и той же последовательности операторов

Цикл с параметром по возрастающим значениям параметра

For I: = А to В do тело цикла;

Тело цикла – простой или составной оператор.

Составной оператор – группа операторов между begin и end.

I – переменная, порядкового типа (integer, char)

Начальное (А) и конечное (В) значения параметра цикла могут быть представлены константами, переменными или арифметическими выражениями.

Оператор цикла с параметром данного вида выполняется следующим образом- вычисляются значения выражений А и В. Если А последовательно принимает значения, равные А, А+1, …., В-1, В (шаг+1) и для каждого из этих значений выполняется . Если АВ, то не выполняется ни разу.

Цикл с параметром по убывающим значениям параметра:

For I:=А downto В do тело цикла;

Параметр I меняет свое значение от А до В с шагом –1 (для целого типа),

если А

Цикл с предусловием используется тогда, когда число повторений оператора цикла заранее не известно, а задается некоторое условие продолжения цикла.


While do

;

Выполнение оператора цикла с предусловием начинается с проверки условия, записанного после слова While. Если оно соблюдается, то выполняется , затем вновь проверяется условие и т. д. Как только при очередной проверке окажется, что условие не соблюдается, выполнятся не будет.

Цикл выполняется пока условие истинно (верно), если условие сразу не верно – цикл не выполняется ни разу.

Примечание:

  1. Если состоит из нескольких операторов, то они объединяются операторными скобками.

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


Для программной реализации циклических алгоритмов с неизвестным заранее числом повторений имеется ещё один оператор – оператор цикла с постусловием, который имеет следующий вид:

Repeat

;

;

…………….

n;

Until ;{ до тех пор, пока не}

Этот оператор отличается от цикла с предусловием тем, что проверка условия производится после очередного выполнения тела цикла. Это обеспечивает выполнение цикла хотя бы один раз.

Данный оператор цикла предлагает наличие нескольких операторов в теле цикла, поэтому служебные слова Begin и End не нужны.

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

Цикл выполняется пока условие ложно.



Пример 1

Из чисел от 10 до 99 вывести те, сумма цифр которых равна n (0n

Трассировка примера

Рассмотрим выполнение программы в пошаговом режиме для n=___:


n

k

Р1

Р2

S

Условие s=n











































В результате работы программы на экране появится ____ числа:


Пример 2

Подсчитать количество цифр заданного натурального числа n.

Трассировка примера

Рассмотрим выполнение программы в пошаговом режиме для числа ___________:


n

m

k



















В результате работы программы на экране появится предложение:

В числе _________ – ___ цифр.


Пример 3

Составьте программу планирования закупок в магазине на сумму, не превышающую заданную величину.

Трассировка примера

Рассмотрим выполнение программы в пошаговом режиме для суммы _____ рублей:


р

s

x

k

Условие sp































В результате работы программы на экране:

Введите цену товара и его количество ____ _____

Стоимость покупки равна _____

Введите цену товара и его количество ____ _____

Стоимость покупки равна ____

Введите цену товара и его количество ____ _____

Стоимость покупки равна _____

Суммарная стоимость покупки превысила предельную сумму

-75%
Курсы повышения квалификации

Внедрение современных педагогических технологий в условиях реализации ФГОС (в предметной области «Информатика»)

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Методический материал по информатике на тему "Реализация циклического алгоритма на Паскале" (0.12 MB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт