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

Урок№ 23 — Реализация алгоритмов с использованием повторения.

  • Рассматриваем решение домашней задачи.
  • Первый способ решения с помощью цикла с предварительным условием while.
  • Второй способ решения с помощью цикла с параметром for.
  • Оговариваем преимущества и недостатки этих двух циклов.
  • Рассказываем об окне отладки программы и показываем, как нам удобно наблюдать за изменениями переменных, когда мы выполняем программу по шагам.
  • Задаем решить подобную задачу.
  • Если кто-то из учащихся справляется раньше предлагаем решить еще одну задачу.
  • Разобрать блок-схему алгоритма с повторением.
  • Составить программу, которая вычисляет сумму натуральных чисел от 10

Получите комплекты видеоуроков + онлайн версии

Составление алгоритмов с повторением и ветвлением на языке программирование Pascal

Сохранить у себя:
Нравится 0

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

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

Ольга, 07.12.2012 13:03

Дмитрий, посмотрела Ваш ролик. Некоторые комментарии расширили мои знания интерфейса среды программирования. но есть маленькие замечания: вы объявляете проверку домашнего задания и решаете все сами? Есть моменты в ролике, где можно задать вопросы самим ребятам. Я сама часто допускаю такую оплошность, а на вашем примере поняла, что надо себя контролировать и давать детям возможность поразмышлять. Спасибо!!

Источник: videouroki.net

#12.1 Цикл Repeat/Until «с постусловием» в Паскаль

vedro-compota's picture

Цикл Repeat/until характеризуется следующими моментами:

  • Работает пока условие ложно.
  • Сначала выполняется виток цикла и лишь потом проверяется требуется ли завершать цикла или же нужен следующий повтор.
  • Такой цикл всегда выполнится хотя бы один раз (это связано с тем, что условие проверяется после выполнения тела цикла).
  • Операторные скобки вокруг тела цикла repeat-until не нужны не нужны — так как их заменяют сами два слова repeat и until («повторяй» и «пока не»)
Читайте также:
Лучшие средства для удаления вредоносных программ

Пример: выведем на экран все целые числа от $1$ до $n$ (числа введённого пользователем):

Как создать программу на pascal by Riad


var i, n: integer; begin writeln(‘vvedite celoe chislo >1 :’); readln(n); i := 1; repeat // начало тела цикла write(i, ‘ ‘); i := i + 1; // увеличиваем счетчик на 1 until (i>n); // выход из цикла только если счетчик станет больше n readln(); end.

— по сути это пример замены for на repeat-util, для ситуации перебора ряда чисел.

Еще примеры (необходимо доофромить):

var a, b: integer; f: boolean; begin //writeln(‘Введите число:’); //readln(a); //while (a < 15) do //begin // writeln(5); // writeln(‘Введите число:’); // readln(a); //end; repeat writeln(‘Введите число:’); readln(a); f := a < 15; if (f) then writeln(5); until (not f); readln(); end. //var a, b: integer; //begin // a := 1; // repeat // write(a, ‘ ‘); // a := a + 1; // until (a >10); // // writeln(); // // a := 1; // while (a

Repeat/until и другие циклы в Паскаль — связь между ними

Ранее мы уже изучили циклы:

  1. for — «с известным числом повторений», который не проверяет логических условий.
  2. и while (т.н. цикл «с предусловием») — цикл похожий на Repeat/until — также проверяющий логическое выражение, но while от repeat отличается по следующим пунктам:
  1. По условию выхода из цикла:
    • while работает пока его логическое условие истинно,
    • repeat-until наоборот пока ложно.
    • По порядку проверки условия:
      • while сначала проверяет условие (если истинно — то продолжает работу), а потом делает очередной (в том числе первый) свой виток.
      • repeat-until сначала делает виток, а потом проверяет условие (если ложно — то продолжает работу).

      Видео-пояснения

      Для этого урока есть следующию видео-пояснения:

      Теоретические вопросы

      1. Что такое виток цикла?
      2. Чем отличается цикл repeat/until от циклов for и while? Похож ли он в чем-то на них?

      Задачи для самостоятельного решения

      Примечание: в задачах данного урока, в качестве конструкции для организации цикла (если требуется) используйте repeat-until, если в задаче явно не сказано использовать какую-то другую конструкцию.

      1. Вывести на экран все числа от 1 до N с помощью цикла repeat/until.
      2. Сдавать решение не обязательно:
        Исправьте форматирование кода:
      Читайте также:
      Как работать в программе elcut

      var a,b: char; begin repeat writeln (‘введи символ и нажми Enter’); readln (a); if a=’#’ then break else writeln (‘ until (a=’#’); writeln(‘Конец’); end.
      var f: integer; begin writeln(‘Введите целое число’); readln(f); if f < 25 then begin repeat if f mod 23 = 0 then begin f := f — 1; writeln(f); end else f := f — 2; until (f < 1); end else writeln(‘ошибка’); writeln(‘Конец!’); readln(); end.

        Если мы введем число 55, то программа должна вывести в ответ:

      46 23

      Подсказка: если не получается решить или для лучшего понимания см. этот видео-разбор данной задачи

      Key Words for FKN + antitotal forum (CS VSU):

      • Паскаль цикл repeat until примеры
      • Паскаль отличия цикла while от repeat-until

      Источник: fkn.ktu10.com

      Операторы повтора в Паскале

      Операторы повтора используются при организации циклов. Цикл – это последовательность операторов, которая может выполняться более одного раза. Если количество повторов известно заранее, как правило используют оператор for, а если нет, то операторы repeat или while.

      Оператор цикла for

      Оператор может быть представлен в двух вариантах:

      for < параметр цикла >:= < S1 >to < S2 >do < оператор >; for < параметр цикла >:= < S1 >downto < S2 >do < оператор >;

      S1,S2 – начальное и конечное значения параметра цикла. Первый вариант обеспечивает прокрутку параметра по возрастанию, второй по убыванию. Тело цикла может быть простым или составным.

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

      for i:=10 to 14 do write (i:3); for i:=14 downto 10 write (i:3); for Ch:=’a’ to ‘e’ do write (Ch:2);

      Читайте также:
      Воронины это мой ребенок на программе

      Замечание 1. В операторе for не допускается изменение параметра цикла на величину отличную от единицы. Этого недостатка лишены while, repeat.
      Замечание 2. В теле оператора for не допускается изменение величины параметра цикла.
      Замечание 3. Для досрочного выхода из цикла, можно использовать оператор goto. Но с точки зрения структурного программирования в случае необходимости досрочного выхода из цикла следует пользоваться операторами while, repeat.
      Замечание 4. В теле цикла могут находиться другие циклы (вложенные). Здесь следует соблюдать осторожность.

      Оператор повтора repeat

      repeat . . . until ;

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

      Замечание 1. Тело цикла обязательно выполняется хотя бы один раз.
      Замечание 2. В теле цикла может находиться произвольное число операторов без операторных скобок begin .. end.
      Замечание 3. Для преждевременного выхода из цикла можно присвоить параметру цикла значение заведомо не удовлетворяющее условию цикла.

      repeat s:=100/A; D:=A/5; if s0); Metka: . . . repeat s:=100/A; if s

      Оператор while

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

      while do ;

      Условие- булево выражение, а тело цикла – простой или составной оператор. Перед каждым выполнением тела цикла вычисляется условие, и если оно истинно, то тело цикла выполняется. Если результат ложный, то происходит вы-ход из цикла и переход к первому после while оператору.

      Замечание 1. Если перед первым выполнением значение условия ложно, то тело цикла вообще не будет выполняться.
      Замечание 2. Для организации изначально бесконечного цикла можно в условии цикла записать константу True или заведомо справедливое условие.
      Замечание 3. Использование оператора while вызывает гораздо меньше ошибок, чем использование оператора repeat, поэтому если нет особой необходимости, следует отдавать предпочтение while.

      Источник: upbyte.net

      Рейтинг
      ( Пока оценок нет )
      Загрузка ...
      EFT-Soft.ru