Паскаль. Основы программирования


Условия в программах с циклами - часть 4


5. Конец.  

Программа

Program

Problem4; { Входит ли цифра 2 в запись числа }

    uses WinCrt;

    var

       n, p, k : integer;

    begin

       write('Введите целое число '); readln(n);

       k := 0;

       while n <> 0 do

          begin

             p := n mod 10;

                if p = 2 then k := k + 1;

             n := n div 10

          end;           

           if

k = 0  then writeln('Цифра 2 не входит в запись этого числа')

                         else  writeln('Цифра 2 входит в запись этого числа')

     end.

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

Например, если нами введено число 31572. В программе сделано так, что отделяется по одной цифре справа и так продолжается до первой цифры слева.

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

Возникает необходимость в досрочном прерывании цикла. Как это сделать мы рассмотрим ниже.




Начало  Назад  Вперед