Pascal: Занятие №3. Часть 1: Цикл с постусловием в Паскаль

На занятии рассматривается цикл с постусловием в Паскаль Repeat и происходит знакомство со строковым типом данных

Основной задачей портала labs-org.ru является предоставление возможности получения навыков решения практических задач с использованием языка программирования Pascal. На основе решенных примеров и заданий по Паскалю, изложенных по мере увеличения их сложности, даже новичкам будет достаточно просто усвоить предоставленный материал.

Цикл с постусловием в Паскаль (repeat)

Пример: Ввести целое положительное число (n) и определить четное ли оно.

Проблема 1: Как избежать ввода отрицательного числа или нуля?
Решение 1: Если вводится неверное число, то нужно вернуться назад к вводу данных (цикл).

Проблема 2: Неизвестно, сколько шагов надо сделать.
Решение 2: Надо остановиться, когда n > 0, т.е. надо делать «до тех пор пока n не станет больше0».

  • Один раз тело цикла надо сделать в любом случае => проверку условия цикла надо делать в конце цикла (цикл с постусловием)!.
    • Цикл Repeat в Паскале используется для организации повторений (итераций) с заранее неизвестным их числом.
    • Цикл повторяется до тех пор, пока не станет истинным некоторое условие.
    repeat
      оператор1;
      оператор2;
      . . .;
      операторN
    until условие {до тех пор, пока условие не станет истинным}

    Блок-схема решения примера:

    Блок-схема решения примера

    Блок-схема решения примера

    Решение на Паскале:
    Цикл repeat пример на паскале

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

    Еще одно использование цикла Repeat рассмотрим на примере с решением.

    Пример: Печатать «ноль» указанное количество раз
    Показать решение:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    var i,n:integer;
    begin
    write ('kolichestvo raz');
    readln(n);
    i:=1;
    repeat
      write(0);
      i:=i+1
    until i>n
    end.

    В решенной задаче оператор 8-й строки — это счетчик (i:=i+1), который просчитывает количество раз и одновременно является условием для выхода из цикла.

    Задача 1. Написать программу решения задачи о печати чисел 3 5 7 9 11 13. Для решения задачи использовать цикл Repeat

    Узнать о работе оператора с постусловием в Паскале можно также из видеоурока:

    Строковый тип данных в Паскаль

    Для решения следующей задачи нам пригодится работа со строковым типом данных.
    Рассмотрим как объявляются строки в Паскале:

    Объявление строковой переменной:

    var str:string;

    Присваивание значения строковой переменной:

    str:='вот такая вот строка';
    Пример использования строковых переменных в Паскале
    1
    2
    3
    4
    5
    6
    7
    
    var str1,str2: string;
    begin
         str1:='Привет, ';
         writeln('Ваше имя?');
         readln(str2);
         writeln(str1,str2)
    end.

    Теперь снова возвращаемся к нашему циклу repeat.

    Задача 2. Компьютер предлагает человеку ввести слово, после чего распечатывает это слово, снабдив его восклицательным знаком. Затем снова предлагает ввести слово и так до тех пор, пока человек не введет слово «Хватит». Распечатав его с восклицательным знаком, компьютер отвечает: «Хватит так хватит» и заканчивает работу. Для решения задачи использовать цикл с постусловием в Паскаль.
    Дополнительно: Перед выводом каждого слова необходимо выводить его порядковый номер.
    Задача 3. Составьте блок-схему решенного задания.
    Поделитесь уроком с коллегами и друзьями:

    Добавить комментарий

    Ваш e-mail не будет опубликован. Обязательные поля помечены *

    *
    *

    Вставить формулу как
    Блок
    Строка
    Дополнительные настройки
    Цвет формулы
    Цвет текста
    #333333
    Используйте LaTeX для набора формулы
    Предпросмотр
    \({}\)
    Формула не набрана
    Вставить