Инфоурок Информатика Другие методич. материалыУрок по теме «Циклы с пред- и постусловием на языке Pascal» 10 класс

Урок по теме «Циклы с пред- и постусловием на языке Pascal» 10 класс

Скачать материал

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

Выбранный для просмотра документ avtor.doc

Автор: Галялутдинова Дамира Сиразитдиновна

Должность: учитель информатики

Категория: Высшая

Образовательное учреждение: ГБОУ  школа № 559

г. Санкт-Петербург Выборгский  район

E-mail: Damira_62@mail.ru

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Урок по теме «Циклы с пред- и постусловием на языке Pascal» 10 класс"

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Менеджер бизнес-процессов

Получите профессию

Технолог-калькулятор общественного питания

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Выбранный для просмотра документ Приложение.doc

1 группа

1.    Блок-схема: решение: p

s

 
Какой цикл изображен на блок схеме?

 

 


2.    Сколько раз исполнится  следующий цикл:
i:=21;
Repeat

                        i:=i-5
           
Until i>21;

1раз ;  21раз;  бесконечное количество раз.

 

3.    Найдите ошибки в программе:

var n, a, s: real;

begin readln(n)

      s:=0;

      while n>0 do

            begin a:=n mod 10;

                      s=s+a

                      n=n div 10

            end;

      writeln(s)

end

 

 

4.    Сколько раз программа выведет слово «привет»?

var n: integer;

begin n:=2;

      while n<15do

                  begin writeln(‘привет');

                            n:=n+3

                  end;

end.

 

 

 

 

5.    Результат программы?

var k, s: integer;

begin k:=1; s:=0;

          repeat k:=k+3;

                     s:=s+k;

          until k>10;

          writeln(s);

end.

 

6.    Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 109, и выводится минимальная цифра этого числа. Программист торопился и написал программу неправильно. 

var N: longint;

  digit, min_digit: integer;

begin

  readln(N);

  min_digit := 9;
  while N >= 10 do

  begin
    digit := N mod 10;
    if digit < min_digit then
      min_digit := digit;
    N := N div 10;
  end;

  writeln(digit);

end.

Последовательно выполните следующее.

1.       Напишите, что выведет эта программа при вводе числа 547.

2.       Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки:

1) выпишите строку, в которой сделана ошибка;

2) укажите, как исправить ошибку, – приведите правильный вариант строки.

 

1.        2 группа

2.        Какой цикл изображен на блок схеме?

 

 

 

3.        Сколько раз исполнится цикл:
i:=4;

      while i<10 do i:=i+3;

        2 раза; 3 раза; 4 раза.

 

 

4.    Найдите ошибки в программе:

var n, a, s: real;

begin readln(n);

      s=0

      while n>0 do

            begin a:=n mod 10;

                      if a mod 2=1 then s=s+1

                      n=n div 10

            end;

      writeln(s)

end

 

 

5.    Сколько раз программа выведет слово «ура»?

var n: integer;

begin n:=1;

      while n<16do

                  begin writeln(‘ура');

                            n:=n+4

                  end;

end.

 

6.        Результат программы?

var k, s: integer;

begin k:=1; s:=0;

          repeat s:=s+k;

                      k:=k+3;

          until k>10;

          writeln(s);

end.

 

7.    Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 109, и выводится минимальная цифра этого числа. Программист торопился и написал программу неправильно. 

var N: longint;

  digit, min_digit: integer;

begin

  readln(N);

  min_digit := 0;
  while N > 0 do

  begin
    digit := N mod 10;
    if digit < min_digit then
      min_digit := digit;
    N := N div 10;
  end;

  writeln(digit);

end.

Последовательно выполните следующее.

1.       Напишите, что выведет эта программа при вводе числа 862.

2.       Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки:

1) выпишите строку, в которой сделана ошибка;

2) укажите, как исправить ошибку, – приведите правильный вариант строки.

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Урок по теме «Циклы с пред- и постусловием на языке Pascal» 10 класс"

Получите профессию

Методист-разработчик онлайн-курсов

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Выбранный для просмотра документ Циклы с пред и постусловием.doc

Тема: «Циклы с пред и постусловием  на языке Pascal»

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

Класс: 10

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

Продолжительность учебного занятия:  45 минут

Тип урока: обобщающий.

Изучение управляющих конструкций «Циклы с пост и предусловием» в школьной информатике являются важным элементом курса программирования. Целесообразно рассматривать эти конструкции, опираясь на математические понятия, ранее полученные на уроках математики.

В данном уроке была поставлена цель закрепить циклы с предусловием While... do и с постусловием Repeat... until на языке Pascal на примере решения задач из ЕГЭ (В5, В8, С1) и использование бесконечных рядов для вычисления функций. Овладение методом рекуррентных соотношений при изучении представлений стандартных функций в виде асимптотических рядов позволяет познакомить учащихся с трудной, но интересной областью математики и раскрыть многие секреты программирования.

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

План-конспект урока

Цели урока:

Образовательные

·                     Обсуждение особенностей циклических операторов и расширение знаний по теме.

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

Развивающие

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

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

·                     Овладение современным стилем программирования.

·                     Выполнение заданий творческого характера, требующих системного, исследовательского подхода к решению проблемного вопроса.

Воспитательные

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

·                     Воспитание элементов научного мировоззрения, обращение к истории математики и информатики.

·                     Воспитание интереса к учению и формирование познавательной активности.

·                     Воспитание умения четко организовать самостоятельную работу.

Методы: словесные, наглядные, практические.

Формы: фронтальные, индивидуальные.

Материально-техническая база

·                     Компьютер.

·                     Проектор, интерактивная доска.

·                     Презентация «Циклы с пред и постусловием» (Презентация)

·                     Карточки с текстом задач. (Приложение 1)

Межпредметные связи

Математика: бесконечные ряды, рекуррентные соотношения.

Ход урока

I. Вводная часть

Организационный этап. Приветствие учителя.

Объявление темы и целей урока  

II. Актуализация начальных знаний учащихся

Учитель: Язык Паскаль имеет три оператора, с помощью которых можно организовать циклическую структуру:

·                     Цикл с параметром (счетчиком) «Для» (For ... to ... do)

·                     Цикл с предусловием «Пока» (While ... do)

·                     Цикл с постусловием «До» (Repeat ... until)

Учитель:  Вспомним основные определения, рассмотренные на предыдущем уроке, какие понятия связаны с этим циклом.

III. Закрепление материала

Раздел 1. Теоретические знания циклов и языка программирования.

УчительС помощью циклов While... do и Repeat... until можно выполнить любую циклическую задачу.

·                     Эти циклы используются при табулировании графиков функций на заданном интервале с заданным шагом.

·                     Выполняются задачи, когда заранее неизвестно сколько раз повторять действия.

·                     C помощью этих циклов рассчитывают с заданной точностью бесконечные асимптотические ряды для тригонометрических функций.

Рассмотрим формат операторов циклов While... do и Repeat... until и проведем сравнение этих циклов.

Что общее у этих циклов? В чем разница? (Слайды 2, 3).

Обсуждаются особенности цикла While... do (Слайд 4).

Обсуждаются особенности цикла Repeat... until (Слайд 5).

Учитель: Приступим к практическому программированию. На слайде представлена программа с синтаксическими ошибками. Найти их и исправить. (Слайд 6).

var n,a,s: real;

begin readln(n);

      s:=0;

      while n>0 do

            begin a:=n mod 10;

                      if a mod 2=0 then s:=s+a;

                      n:=n div 10

            end;

      writeln(s)

end.

 

Ученики находят 5 ошибок в программе.

Раздел 2. Решение задач с использованием цикла While...do.

Учитель: Сколько раз программа выведет слово «привет». (Слайд 7).

var n: integer;

begin n:=0;

      while n<9 do

                  begin writeln(‘привет');

                            n:=n+2

                 end;

end.

Ответ: 5 раз. А что будет, если убрать begin и end.

Раздел 3. Решение задач с использованием цикла Repeat … until.

Учитель:  Дана программа. Что будет на экране. (Слайд 8).

var k, s: integer;

begin k:=1; s:=0;

          repeat s:=s+k;

                     k:=k+2;

          until k>8;

          writeln(s);

end.

Ответ: 16. А если поменять знак > на < (ответ 1).

Поменяем местами два оператора тела цикла. (Слайд 9).

var k, s: integer;

begin k:=1; s:=0;

          repeat k:=k+2;

                     s:=s+k;

          until k>8;

          writeln(s);

end.

 Изменится ли результат.

Ответ: да, результат 24. Сделаем вывод: порядок важен.

Учитель: Как правило, в заданиях мы определяем, что будет в ходе выполнения программы. Но иногда наоборот известен результат, а нам надо определить, что для этого ввести. В заданиях ЕГЭ это тест В8. (Слайд 10).

Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7.

 

var x,a,b: integer;

begin readln(x); a:=0; b:=0;

      while x>0 do

                  begin a:=a+1;

                            b:=b+x mod 10;

                            x:=x div 10

                  end;

      writeln(a); writeln(b);

end.

Ответ:700. А если изменить на наименьшее? Ответ:106.

Учитель: Рассмотрим еще два задания из ЕГЭ. Это С1. (Слайд 11).

Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N и выводится максимальная цифра числа. Программист торопился и написал программу неправильно.
 1. Напишите, что выведет эта  программа при вводе числа 542.
 2. Найдите все ошибки в этой программе.

var N: longint;  d, max: integer;

begin  readln(N);

           max:= 10;
       while N > 9 do

                   begin
                        d:= N mod 10;
                        if d > max then  max:= d;
                        N := N div 10;
               end;

         writeln(max);

end.

Ответ: 10.

Следующее задание. (Слайд 12).

Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, и выводится количество цифр этого числа. Программист торопился и написал программу неправильно.
1. Напишите, что выведет эта программа при вводе числа 584.
2.  Укажите число, для которого программа будет работать верно.
3. Найдите ошибку.

var N: longint;  sum: integer;

begin  readln(N);

           sum := 0;
      while N >= 9 do

                           begin
                                N := N div 10;
                                sum := sum + 1;
                       end;

           writeln(sum);

end.

Ответ:1) 2

            2) 984.

 

Раздел 4. Групповая работа.

Учитель: Разобьемся на группы. Вам предлагается по 6 заданий, разной степени сложности. Дается 6 мин. Какая группа справится быстрее? (Приложение 1)

Ответы на экране. (Слайд 13).

 

Раздел 5. Практическая работа на компьютере. 

Учитель: А сейчас работа на компьютерах. Откроем программу zadan1.pas.

1.      Исправим синтаксические ошибки.

2.      Переделаем программу на цикл Repeat … until.

Раздел 6. Вычисление функций через ряды.

Учитель:  Во многих задачах возникает необходимость вычисления бесконечных рядов c заданной точностью с помощью рекуррентных соотношений. В языках программирования стандартные функции ex, sin(x), cos(x), ln(x+1) рассчитывается с помощью   бесконечных сумм, называемые рядами, с заданной точностью e.  (Слайд 14).

Мы рассмотрим вычисление функции ех . (Слайд 15).

 

 

var i: integer; x,s,p,e:real;

begin readln(x,e);p:=1;

          s:=0;i:=1;

           repeat  p:=p*x/i;

                s:=s+p;

                i:=i+1

           until abs(p)<e;

      writeln(s:9:4,' номер=',i-1 );

end.

 

 

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

Задача. Напишите программу вычисления значения функции ln(x+1) для x=1 с помощью ряда с заданной точностью  и сравните результат с вычислением стандартной функции ln(x) при х=2.  (Слайд 16).

V. Материалы к уроку взяты из открытого банка задании ФИПИ

http://www.fipi.ru/

 

 



Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Урок по теме «Циклы с пред- и постусловием на языке Pascal» 10 класс"

Получите профессию

Интернет-маркетолог

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Выбранный для просмотра документ Циклы с пред и постусловием.ppt

Скачать материал "Урок по теме «Циклы с пред- и постусловием на языке Pascal» 10 класс"

Получите профессию

Экскурсовод (гид)

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Описание презентации по отдельным слайдам:

  • Циклы с пред- и постусловиемВыполнил учитель информатики ГБОУ школа №559
Галя...

    1 слайд

    Циклы с пред- и постусловием
    Выполнил учитель информатики ГБОУ школа №559
    Галялутдинова Д.С.

  • Цикл предусловием While … doPSWhile   do   ;PS+-

    2 слайд

    Цикл предусловием While … do
    P
    S
    While <условие> do <один оператор>;
    P
    S
    +
    -

  • Цикл с постусловием Repeat … untilRepeat   until  SP+-SP

    3 слайд

    Цикл с постусловием Repeat … until
    Repeat <операторы> until <условие>
    S
    P
    +
    -
    S
    P

  • Особенности цикла While…doТак как условие проверяется на входе в цикл,  то п...

    4 слайд

    Особенности цикла While…do
    Так как условие проверяется на входе в цикл, то
    при неверном условии цикл не выполняется ни разу, т.е. не выполняются операторы, стоящие в теле цикла.

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

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

  • Особенности цикла Repeat…untilТак как условие проверяется на выходе из цикла,...

    5 слайд

    Особенности цикла Repeat…until
    Так как условие проверяется на выходе из цикла, то цикл выполняется хотя бы один раз.
    Все операторы, стоящие в теле цикла, выполняются ДО проверки условия, поэтому операторные скобки не ставятся.
    В теле цикла должно обязательно выполняться действие, приводящее к изменению условия, иначе цикл станет бесконечным. Оператор, в котором изменяются входящие в условие переменные, может стоять не обязательно в конце цикла.

  • Найдите ошибки в программе.var n,a,s: real;
begin readln(n);
      s:=0...

    6 слайд

    Найдите ошибки в программе.
    var n,a,s: real;
    begin readln(n);
    s:=0
    while n>0 do
    begin a:=n mod 10;
    if a mod 2=0 then s:=s+a
    n=n div 10
    end;
    writeln(s)
    end

  • Сколько раз программа выведет слово «привет»?var n: integer;
begin n:=0;...

    7 слайд

    Сколько раз программа выведет слово «привет»?
    var n: integer;
    begin n:=0;
    while n<9 do
    begin writeln(‘привет');
    n:=n+2
    end;
    end.
    Ответ:5

  • Результат программы?var k, s: integer;
begin k:=1; s:=0;
          repeat s:=...

    8 слайд

    Результат программы?
    var k, s: integer;
    begin k:=1; s:=0;
    repeat s:=s+k;
    k:=k+2;
    until k>8;
    writeln(s);
    end.
    Ответ: 16

  • Результат программы?var k, s: integer;
begin k:=1; s:=0;
          repeat k:=...

    9 слайд

    Результат программы?
    var k, s: integer;
    begin k:=1; s:=0;
    repeat k:=k+2;
    s:=s+k;
    until k>8;
    writeln(s);
    end.
    Ответ: 24

  • Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наиб...

    10 слайд

    Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7.
    var x,a,b: integer;
    begin readln(x); a:=0; b:=0;
    while x>0 do
    begin a:=a+1;
    b:=b+x mod 10;
    x:=x div 10
    end;
    writeln(a); writeln(b);
    end.
    Ответ: 700

  • Требовалось написать программу, при выполнении которой с клавиатуры считывает...

    11 слайд

    Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N и выводится максимальная цифра числа. Программист торопился и написал программу неправильно.
    1. Напишите, что выведет эта  программа при вводе числа 542.
    2. Найдите все ошибки в этой программе.
    var N: longint;  d, max: integer;
    begin  readln(N);
      max:= 10;
      while N > 9 do
      begin
        d:= N mod 10;
        if d > max then  max:= d;
         N := N div 10;
      end;
      writeln(max);
    end.
    Ответ:1) 10

  • Требовалось написать программу, при выполнении которой с клавиатуры считывает...

    12 слайд

    Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, и выводится количество цифр этого числа. Программист торопился и написал программу неправильно.
    1. Напишите, что выведет эта программа при вводе числа 584.
    2. Укажите число, для которого программа будет работать верно.
    3. Найдите ошибку.

    var N: longint;  sum: integer;
    begin  readln(N);
      sum := 0;
      while N >= 9 do
      begin
         N := N div 10;
       sum := sum + 1;
    end;
      writeln(sum);
    end.
    Ответ:1) 2
    2) 984

  • Ответы1 группа
While … do
2 раза
6 ошибок
4 раза
34
1) 4;2) while N &gt;0 do3)...

    13 слайд

    Ответы
    1 группа
    While … do
    2 раза
    6 ошибок
    4 раза
    34
    1) 4;
    2) while N >0 do
    3) writeln(min_digit)

    2 группа
    Repeat … until
    1 раз
    6 ошибок
    5 раз
    22
    1) 8
    2) min_digit := 9;
    3) writeln(min_digit)

  • В языках программирования стандартные функции ex, sin(x), cos(x), ln(x+1) рас...

    14 слайд

    В языках программирования стандартные функции ex, sin(x), cos(x), ln(x+1) рассчитывается с помощью бесконечных сумм, называемые рядами, с заданной точностью .

  • Вычисление ех  с заданной точностью.var i: integer; x,s,p,e:real;
begin readl...

    15 слайд

    Вычисление ех с заданной точностью.
    var i: integer; x,s,p,e:real;
    begin readln(x,e);p:=1;
    s:=0;i:=1;
    repeat p:=p*x/i;
    s:=s+p;
    i:=i+1
    until abs(p)<e;
    writeln(s:9:4,' номер=',i-1 );
    end.
    p:=1
    p:=0
    i:=0
    p:=p*x/i
    s:=s+p
    i:=i+1
    p< 
    s, i-1
    Ввод x, 

  • Домашнее заданиеЗадача. Напишите программу вычисления значения функции ln(x+1...

    16 слайд

    Домашнее задание
    Задача. Напишите программу вычисления значения функции ln(x+1) для x=1 с помощью ряда с заданной точностью и сравните результат с вычислением стандартной функции ln(x) при х=2.

Получите профессию

Секретарь-администратор

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Выбранный для просмотра документ ‚ ¦­®!.txt

Данный материал был скачан с сайта www.metod-kopilka.ru

============================================================

 

!!!!!!!!Орфография и форматирование автора материала!!!!!!!!!!

 

========================================

Образовательно-информационный ресурс для учителей информатики,

учащихся и всех-всех, кто интересуется ИТ:

http://www.metod-kopilka.ru Методическая копилка учителя информатики

 

Организационные, методические и нормативные документы,

лабораторно-практические работы (комплекс занятий по MS Word, MS Excel,

MS Access, MS PowerPaint, Paint, Move Maker и др. прикладным программам),

лекции,конспекты, дидактический материал, занимательная информатика,

экзамен, проектная деятельность, презентации.

Все в свободном доступе! Без регистрации!

 

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Урок по теме «Циклы с пред- и постусловием на языке Pascal» 10 класс"

Получите профессию

Няня

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Получите профессию

Фитнес-тренер

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Краткое описание документа:

Продолжительность учебного занятия: 45 минутТип урока: обобщающий. Изучение управляющих конструкций «Циклы с пост и предусловием» в школьной информатике являются важным элементом курса программирования. Целесообразно рассматривать эти конструкции, опираясь на математические понятия, ранее полученные на уроках математики. В данном уроке была поставлена цель закрепить циклы с предусловием While... do и с постусловием Repeat... until на языке Pascal на примере решения задач из ЕГЭ (В5, В8, С1) и использование бесконечных рядов для вычисления функций. Овладение методом рекуррентных соотношений при изучении представлений стандартных функций в виде асимптотических рядов позволяет познакомить учащихся с трудной, но интересной областью математики и раскрыть многие секреты программирования. Для творческого развития учащихся очень важным обстоятельством является понимание, что программирование это не формальное манипулирование операторами, а созидательный творческий процесс, тем более успешный, чем более осознанной является связь математики, логики и информатики. План-конспект урока Цели урока: Образовательные Обсуждение особенностей циклических операторов и расширение знаний по теме. Овладение синтаксисом циклических конструкций, умением строить блок-схем алгоритмов задач с циклами, выполняемыми по заданному условию. Развивающие Развитие познавательного интереса у учащихся, умения обобщать, анализировать, сравнивать, использовать накопленные ранее знания для решения практических задач. Развитие логического мышления, умение правильно сформулировать математическую модель и алгоритм решения поставленной задачи. Овладение современным стилем программирования. Выполнение заданий творческого характера, требующих системного, исследовательского подхода к решению проблемного вопроса. Воспитательные Формирование у учащихся потребности в практическом использовании языка программирования для решения задач в различных предметных областях. Воспитание элементов научного мировоззрения, обращение к истории математики и информатики. Воспитание интереса к учению и формирование познавательной активности. Воспитание умения четко организовать самостоятельную работу. Методы: словесные, наглядные, практические.Формы: фронтальные, индивидуальные.Материально-техническая база Компьютер. Проектор, интерактивная доска. Презентация «Циклы с пред и постусловием» (Презентация) Карточки с текстом задач. (Приложение 1) Межпредметные связиМатематика: бесконечные ряды, рекуррентные соотношения.Ход урокаI. Вводная часть Организационный этап. Приветствие учителя. Объявление темы и целей урока II. Актуализация начальных знаний учащихся Учитель: Язык Паскаль имеет три оператора, с помощью которых можно организовать циклическую структуру: Цикл с параметром (счетчиком) «Для» (For ... to ... do) Цикл с предусловием «Пока» (While ... do) Цикл с постусловием «До» (Repeat ... until) Учитель: Вспомним основные определения, рассмотренные на предыдущем уроке, какие понятия связаны с этим циклом.III. Закрепление материалаРаздел 1. Теоретические знания циклов и языка программирования. Учитель: С помощью циклов While... do Repeat... until можно выполнить любую циклическую задачу. Эти циклы используются при табулировании графиков функций на заданном интервале с заданным шагом. Выполняются задачи, когда заранее неизвестно сколько раз повторять действия. C помощью этих циклов рассчитывают с заданной точностью бесконечные асимптотические ряды для тригонометрических функций. Рассмотрим формат операторов циклов While... do и Repeat... until и проведем сравнение этих циклов.Что общее у этих циклов? В чем разница? (Слайды 2, 3). Обсуждаются особенности цикла While... do (Слайд 4). Обсуждаются особенности цикла Repeat... until (Слайд 5).Учитель: Приступим к практическому программированию. На слайде представлена программа с синтаксическими ошибками. Найти их и исправить. (Слайд 6). var n,a,s: real; begin readln(n); s:=0; while n 0 do begin a:=n mod 10; if a mod 2=0 then s:=s+a; n:=n div 10 end; writeln(s) end. Ученики находят 5 ошибок в программе.Раздел 2. Решение задач с использованием цикла While...do.Учитель: Сколько раз программа выведет слово «привет». (Слайд 7). var n: integer; begin n:=0; while n 9 do begin writeln(‘привет'); n:=n+2 end; end. Ответ: 5 раз. А что будет, если убрать begin и end.Раздел 3. Решение задач с использованием цикла Repeat … until.Учитель: Дана программа. Что будет на экране.(Слайд 8). var k, s: integer; begin k:=1; s:=0; repeat s:=s+k; k:=k+2; until k 8; writeln(s); end. Ответ: 16. А если поменять знак на (ответ 1). Поменяем местами два оператора тела цикла.(Слайд 9). var k, s: integer; begin k:=1; s:=0; repeat k:=k+2; s:=s+k; until k 8; writeln(s); end. Изменится ли результат. Ответ: да, результат 24. Сделаем вывод: порядок важен.Учитель: Как правило, в заданиях мы определяем, что будет в ходе выполнения программы. Но иногда наоборот известен результат, а нам надо определить, что для этого ввести. В заданиях ЕГЭ это тест В8. (Слайд 10). Получив на вход число x, этот алгоритм печатает два числа aи b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7. var x,a,b: integer; begin readln(x); a:=0; b:=0; while x 0 do begin a:=a+1; b:=b+x mod 10; x:=x div 10 end; writeln(a); writeln(b); end. Ответ:700. А если изменить на наименьшее? Ответ:106.Учитель: Рассмотрим еще два задания из ЕГЭ. Это С1. (Слайд 11). Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N и выводится максимальная цифра числа. Программист торопился и написал программу неправильно. 1. Напишите, что выведет эта программа при вводе числа 542. 2. Найдите все ошибки в этой программе. var N: longint; d, max: integer; begin readln(N); max:= 10; while N 9 do begin d:= N mod 10; if d max then max:= d; N := N div 10; end; writeln(max); end. Ответ: 10. Следующее задание. (Слайд 12). Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, и выводится количество цифр этого числа. Программист торопился и написал программу неправильно. 1. Напишите, что выведет эта программа при вводе числа 584. 2. Укажите число, для которого программа будет работать верно. 3. Найдите ошибку. var N: longint; sum: integer; begin readln(N); sum := 0; while N = 9 do begin N := N div 10; sum := sum + 1; end; writeln(sum); end. Ответ:1) 2 2) 984. Раздел 4. Групповая работа. Учитель: Разобьемся на группы. Вам предлагается по 6 заданий, разной степени сложности. Дается 6 мин. Какая группа справится быстрее? (Приложение 1) Ответы на экране. (Слайд 13). Раздел 5. Практическая работа на компьютере. Учитель: А сейчас работа на компьютерах. Откроем программу zadan1.pas. Исправим синтаксические ошибки. Переделаем программу на цикл Repeat … until. Раздел 6. Вычисление функций через ряды. Учитель: Во многих задачах возникает необходимость вычисления бесконечных рядов c заданной точностью с помощью рекуррентных соотношений. В языках программирования стандартные функции ex, sin(x), cos(x), ln(x+1) рассчитывается с помощью бесконечных сумм, называемые рядами, с заданной точностью e. (Слайд 14). Мы рассмотрим вычисление функции ех . (Слайд 15). var i: integer; x,s,p,e:real; begin readln(x,e);p:=1; s:=0;i:=1; repeat p:=p*x/i; s:=s+p; i:=i+1 until abs(p) writeln(s:9:4,' номер=',i-1 ); end. IV. Домашнее задание Задача. Напишите программу вычисления значения функции ln(x+1) для x=1 с помощью ряда с заданной точностью и сравните результат с вычислением стандартной функции ln(x) при х=2. (Слайд 16). V. Материалы к уроку взяты из открытого банка задании ФИПИ http://www.fipi.ru/ Слайд 15

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 662 871 материал в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 23.03.2020 448
    • ZIP 107.2 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Анохина Галина Владимировна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Анохина Галина Владимировна
    Анохина Галина Владимировна
    • На сайте: 3 года и 4 месяца
    • Подписчики: 0
    • Всего просмотров: 81200
    • Всего материалов: 242

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Копирайтер

Копирайтер

500/1000 ч.

Подать заявку О курсе

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

Организация преподавания информационных систем и технологий в профессиональном образовании

36 ч. — 180 ч.

от 1700 руб. от 850 руб.
Подать заявку О курсе
  • Этот курс уже прошли 75 человек

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

Применение компьютерных моделей при обучении математике и информатике в рамках ФГОС ООО

72 ч. — 180 ч.

от 2200 руб. от 1100 руб.
Подать заявку О курсе
  • Сейчас обучается 49 человек из 28 регионов
  • Этот курс уже прошли 178 человек

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

Компьютерная грамотность для пенсионеров

36 ч. — 180 ч.

от 1580 руб. от 940 руб.
Подать заявку О курсе
  • Этот курс уже прошли 22 человека

Мини-курс

Переходные моменты в карьере

4 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Психологические концепции и практики

6 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 23 человека из 16 регионов

Мини-курс

Стратегии успешного B2C маркетинга: от MoSCoW до JTBD

6 ч.

780 руб. 390 руб.
Подать заявку О курсе