4827

Управляющие структуры Object Pascal

Лекция

Информатика, кибернетика и программирование

Управляющие структуры ObjectPascal. Цель: Повторение со студентами управляющих структур Pascal. Задачи: Воспитательная: необходимость повторения. Учебная: повторение управляющих структур и их применение в среде разработки ObjectPascal. Р...

Русский

2012-11-27

273.5 KB

5 чел.

Управляющие структуры Object Pascal.

Цель:

Повторение со студентами управляющих структур Pascal.

Задачи:

Воспитательная: необходимость повторения.

Учебная: повторение управляющих структур и их применение в среде разработки Object Pascal.

Развивающая: развитие внимательности.

План занятия.

  1.  Организационный момент.
  2.  Изучение нового материала.
  3.  Контрольные вопросы.
  4.  Резюме.
  5.  Домашнее задание.

Изучение нового материала.

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

Условие

   В программе условие – это выражение логического типа (Boolean), которое может принимать одно из двух значений: True (истина) или False (ложь). Простое условие состоит из двух операндов и оператора сравнения.

   Оп1 Оператор Оп2

   Оп1 и Оп2 0 операнды условия, в качестве которых может выступать переменная, константа, функция или выражение;

   Оператор – оператор сравнения

   В Pascal есть шесть операторов сравнения.

Оператор

Описание

Результат сравнения

>

<

=

<>

>=

<=

Больше

Меньше

Равно

Не равно

Больше или равно

Меньше или равно

True, если первый операнд больше второго, иначе False

True, если первый операнд меньше второго, иначе False

True, если первый операнд равен второму, иначе False

True, если первый операнд не равен второму, иначе False

True, если первый операнд больше или равен второму, иначе False

True, если первый операнд меньше или равен второму, иначе False

   Ниже приведены примеры условий

   Summa < 1000 - Операндами условия являются переменная и константа. Значение этого условия зависит от значения переменной Summa. Условие будет верным, если значение переменной Summa меньше, чем 1000.

   Score >= HBound – В качестве операндов используются переменные. Значение этого условия будет True, если значение переменной Score больше или равно значению переменной HBound.

   Sim = Chr(13) – В качестве второго операнда используется функция. Значение этого условия будет True, если в переменной Sim находится символьный код клавиши Enter, равный 13.

   Из простых условий при помощи логических операторов: and – логическое И, or – логическое ИЛИ, not – отрицание можно строить сложные условия. В общем виде сложное условие записывается следующим образом:

   условие1 оператор условие2

   условие1 и условие2 – простые условия (выражения логического типа);

   оператор – оператор and или or.

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

Ор1

Ор2

Op1 and Op2

Op1 or Op2

not Op1

False

False

True

True

False

True

False

True

False

False

False

True

False

True

True

True

True

True

False

False

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

   Инструкция IF

   Инструкция IF позволяет выбрать один из двух возможных вариантов развития программы. Выбор осуществляется в зависимости от выполнения условия. В общем виде инструкция IF записывается так:

IF      условие  

then

begin

                    // здесь инструкции, которые надо выполнить,

                    // если условие истинно.

 end 

else

begin

                    //    здесь инструкции,   которые надо выполнить,

        //    если условие ложно.

end;

   Выполняется инструкция if следующим образом:       

  1.  Вычисляется значение условия (условие — выражение логического типа, значение которого может быть равно True или False).
  2.  Если условие истинно (значение выражения условие равно True), то выполняются инструкции, следующие за словом then. На этом выполнение операции if заканчивается, то есть инструкции, следующие за else, не будут выполнены.
  3.  Если условие ложно (значение выражения условие равно false), то выполняются инструкции, следующие за словом else.

   В качестве примера использования инструкции if рассмотрим программу вычисления стоимости разговора.

   Стоимость разговора по телефону в воскресные дни ниже, чем в обычные. Программа запрашивает длительность разговора и день недели, а затем вычисляет стоимость разговора. Если день недели – суббота или воскресенье, то стоимость уменьшается на величину скидки. Цена минуты разговора и величина скидки задаются в тексте программы как константы. Программа производит вычисления при щелчке командной кнопки Вычислить. Возникает событие OnClick, которое обрабатывается процедурой procedure TForm1.Button1Click.

   Листинг:

unit Phone_u;

interface

uses

 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

 TForm1 = class(TForm)

   Edit1: TEdit;       // поле ввода длительности разговора

   Edit2: TEdit;       // поле ввода номера дня недели

   Button1: TButton;   // кнопка Вычислить

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   procedure Button1Click(Sender: TObject);

  private

   { Private declarations }

  public

   { Public declarations }

 end;

var

 Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);

const

       PAY = 0.15;     // цена одной минуты разговора 0.15 рубля

       DISCOUNT = 0.2; // скидка 20 процентов

var

Time:Real; // длительность разговора

Day:integer; // день недели

Summa:real; // стоимость разговора

begin

       //получить исходные данные

       Time:=StrToFloat(Edit1.Text);

       Day:=StrToInt(Edit2.Text);

       // Вычислить стоимость разговора

Summa:= PAY*Time;

       // Если день суббота или воскресенье, то уменьшить стоимость на величину скидки

if (Day = 6) OR (Day = 7)

 then Summa:=Summa*(1 -DISCOUNT);

       // вывод результата вычисления

       label3.caption:='К оплате '+FloatToStr(Summa)+'руб.';

end;

end.

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

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

unit Unit1;

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

 TForm1 = class(TForm)

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Edit1: TEdit;               // поле ввода числа а

   Edit2: TEdit;               // поле ввода числа b

   Edit3: TEdit;               // поле ввода числа c

   Button1: TButton;       // кнопка Вычислить

   Button2: TButton;       // кнопка Выход

   Label4: TLabel;

   Label5: TLabel;            // поле вывода результата

   procedure Button2Click(Sender: TObject);

   procedure Button1Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);

begin

Application.Terminate;

end;

procedure TForm1.Button1Click(Sender: TObject);

var a, b, c, d, x, x1, x2:Real;

begin

a:=StrToFloat(Edit1.Text);

b:=StrToFloat(Edit2.Text);

c:=StrToFloat(Edit3.Text);

d:=b*b-4*a*c;

if d>0 then begin

   x1:=(-b-sqrt(d))/(2*a);

   x2:=(-b+sqrt(d))/(2*a);

   Label5.Caption:= 'Дискриминант: ' + FloatToStr(d)+ #13+

   'x1= '+ FloatToStr(x1)+ #13+

   'x2= '+FloatToStr(d);

   end

   else

   if d=0 then begin

      x:=(-b)/(2*a);

      Label5.Caption:= 'Дискриминант: ' + FloatToStr(d)+ #13+

      'x= '+ FloatToStr(x);

       end

       else

           ShowMessage('Уравнение не имеет корней.');

end;

end.

Инструкция CASE.

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

case выражение of

Список1: begin

  Операции;

 end;

Список2: begin

  Операции;

 end;

 СписокN: begin

  Операции;

 end

                 else begin

  Операции;

      end;

end;

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

   СписокN – список констант.

   Выполняется инструкция case  следующим образом:

  1.  Сначала вычисляется значение выражения;
  2.  Выражение последовательно сравнивается с константами из списков констант;
  3.  Если значение совпадает с константой из списка, то выполняется соответствующая этому списку группа инструкций. На это выполнение инструкции case завершается;
  4.  Если значение выражения не совпало ни с одной из всех списков, то выполняется последовательность инструкций, следующих за else.

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

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

   Для выбора названия страны используется список – компонент ListBox. Значок компонента ListBox находится на вкладке Standard.

Таблица. Свойства компонента ListBox

Свойство

Определяет

Name

Имя компонента. В программе используется для доступа к свойствам компонента

Items

Элементы списка

Itemindex

Номер выбранного элемента списка. Номер первого элемента списка равен нулю

Left

Расстояние от левой границы списка до левой границы формы

Top

Расстояние от верхней границы списка до верхней границы формы

Height

Высоту поля списка

Width

Ширину поля списка

Font

Шрифт, используемый для отображения элементов списка

Parent-Font

Признак наследования свойств шрифта родительской формы

   У компонента ListBox1 свойство Items содержит элементы списка.

   Свойство ItemIndex задает номер выбранного элемента списка. Если ни один элемент не выбран, то значение свойства равно минус единице. Номер первого элемента списка равен нулю.

Список может быть сформирован во время создания формы. Для формирования списка надо в окне Object Inspector выбрать свойство Items и щелкнуть на кнопке запуска редактора списка строк.

   В открывшемся диалоговом окне String List Editor нужно ввести названия государств.  После ввода очередного элемента списка необходимо нажать клавишу Enter. Завершив ввод списка, следует щелкнуть на кнопке ОК. Процедура пересчета умножает вес в фунтах на коэффициент, равный количеству килограммов в одном фунте. Значение коэффициента определяется по номеру выбранного из списка элемента.

Листинг

unit Unit1;

interface

uses

 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

 TForm1 = class(TForm)

   Label2: TLabel;

   Edit1: TEdit;      // поле ввода веса в фунтах

   Button1: TButton;  // кнопка "Вычислить"

   Label1: TLabel;

   Label3: TLabel;

   ListBox1: TListBox; // список стран

   Label4: TLabel;     // поле вывода рез-та - веса в килограммах

   procedure FormCreate(Sender: TObject);

   procedure Button1Click(Sender: TObject);

  private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);

begin

{

    ListBox1.items.add('Россия');

    ListBox1.items.add('Австрия');

    ListBox1.items.add('Англия');

    ListBox1.items.add('Германия');

    ListBox1.items.add('Дания');

    ListBox1.items.add('Исландия');

    ListBox1.items.add('Италия');

    ListBox1.items.add('Нидерланды');

}

ListBox1.itemindex:=0;

end;

procedure TForm1.Button1Click(Sender: TObject);

var

  funt:real; // вес в фунтах 

  kg:real;   // вес в килограммах

  k:real;    // коэффициент пересчета

begin

 case ListBox1.ItemIndex of

     0: k:=0.4059;  // Россия 

     1: k:=0.453592; // Англия

     2: k:=0.56001; // Австрия 

     3..5,7:k:=0.5; // Германия, Дания, Исландия, Нидерланды

     6: k:=0.31762; // Италия 

 end;

funt:=StrToFloat(Edit1.Text);

kg:=k*funt;

label4.caption:=Edit1.Text

                + ' фунт. - '

                + FloatToStrF(kg,ffFixed,6,3)

                + ' кг.';

end;

end.

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

Циклы.

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

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

   Инструкция FOR.

   В общем, виде инструкция for записывается следующим образом:

for счетчик := нач_знач to кон_знач do

 begin

 // здесь инструкции, которые надо выполнить несколько раз

 end;

   где счетчик – переменная-счетчик числа повторений инструкций цикла;

          нач_знач – выражение, определяющее начальное значение счетчика циклов;

          кон_знач – выражение, определяющее конечное значение счетчика циклов.

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

(кон_знач – нач_знач + l).

   Рассмотрим программу, которая вычисляет сумму первых 10 элементов ряда: 1+1/2+1/3+… (значение i-го элемента ряда связано с его номером формулой 1/i). Диалоговое окно программы должно содержать, по крайней мере, два компонента: поле метки (Label1) и командную кнопку (Button1).

   Вычисление суммы ряда и вывод результата выполняет процедура обработки события OnClick. После вычисления очередного элемента ряда процедура выводит в поле Label1 номер элемента и его значение в поле метки формы, предназначенное для вывода результата.

Листинг

unit Unit1;

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

 TForm1 = class(TForm)

   Label1: TLabel;

   Button1: TButton;

   procedure Button1Click(Sender: TObject);

  private

   { Private declarations }

  public

   { Public declarations }

 end;

var

 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var

   i:integer;   // номер элемента ряда

   elem:real;  //  значение элемента ряда

   summ:real;  //  сумма элементов ряда

begin

   summ:=0;

   label1.Caption:=' ';

   for i:=0 to 10 do

      begin

         elem:=1/i;

         label1.Caption:=label1.Caption +

               inttostr(i) + ' ' + floattostr(elem) + #13;

         summ:=summ+elem;

      end;

   label1.Caption:=label1.Caption +

                   'Сумма ряда: ' + floattostr(summ);

end;

end.

   Если в инструкции for вместо слова to записать downto, то после очередного выполнения инструкций тела цикла значение счетчика будет не увеличиваться, а уменьшаться.

Инструкция WHILE.

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

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

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

while условие do begin

   // здесь инструкции, которые надо выполнить несколько раз

end

где условие — выражение логического типа, определяющее условие выполнения инструкций цикла.

   Инструкция while выполняется следующим образом:

  1.  Сначала вычисляется значение выражения условие.
  2.  Если значение выражения условие равно False (условие не выполняется), то на этом выполнение  инструкции while завершается.
  3.  Если значение выражения условие равно True (условие выполняется), то выполняются  расположенные между begin и end инструкции тела цикла. После этого снова проверяется выполнение условия. Если условие выполняется, то инструкции цикла выполняются еще раз. И так до тех пор, пока условие не станет ложным (False).

   Рассмотрим программу, которая вычисляет значение числа π с точностью, задаваемой пользователем во время работы программы. В основе алгоритма вычисления лежит тот факт, что сумма ряда 1 - 1/3 + 1/5 -1/7 + 1/9 + ... приближается к значению π /4 при достаточно большом количестве членов ряда. Каждый член ряда с номером n вычисляется по формуле: 1/(2*n - 1) и умножается на минус один, если n четное (определить, является ли n четным, можно проверкой остатка от деления n на 2). Вычисление заканчивается тогда, когда значение очередного члена ряда становится меньше, чем заданная точность вычисления. Вид диалогового окна программы во время ее работы приведен на рис. Пользователь вводит точность вычисления в поле ввода (Edit1). После щелчка на командной кнопке Вычислить (Button1) программа вычисляет значение числа л и выводит результат в поле метки (Label1). Текст программы приведен в листинге. Основную работу выполняет процедура обработки события OnClick.

Листинг. Вычисление числа π

unit pi_;

interface

uses

   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

   TForm1 = class(TForm)

       Edit1: TEdit; // точность вычисления 

       Button1: TButton; // кнопка Вычислить 

       Label1: TLabel;

       Label2: TLabel; // поле вывода результата 

       procedure ButtonlClick(Sender: TObject);

   private

       { Private declarations }

   public

       { Public declarations )

   end;

var

   Form1: TForm1;

implementation

   {$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);

var

   pi:real; // вычисляемое значение ПИ 

   t:real; // точность вычисления 

   n:integer; // номер члена ряда 

   elem:real; // значение члена ряда 

begin

   pi := 0;

   n := 1;

   t := StrToFloat(editl.text) ;

   elem := 1; // чтобы начать цикл 

   while elem >= t do

       begin

           elem := 1 / (2*n - 1) ;

            if n MOD 2=0

               then pi := pi — elem

               else pi := pi + elem;

           n := n + 1;

       end;

   pi: = pi * 4;

   label1.caption:= 'ПИ равно '+ FloatToStr(pi) + #13

                          + 'Просуммировано '+IntTostr(n)+' членов ряда.';

end;

end.

Инструкция repeat

   Инструкция repeat, используется в программе в том случае, если необходимо выполнить повторные вычисления (организовать цикл), но число повторений во время разработки программы неизвестно и может быть определено только во время работы программы, т. е. определяется ходом вычислений.

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

repeat

   // инструкции

unti1 условие

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

   Инструкция repeat выполняется следующим образом:

  1.  Сначала выполняются находящиеся между repeat и until инструкции тела цикла.
  2.  Затем вычисляется значение выражения условие. Если условие ложно (значение выражения условие равно False), то инструкции тела цикла выполняются еще раз.
  3.  Если условие истинно (значение выражения условие равно True), то выполнение цикла  прекращается.

   Таким образом, инструкции цикла, находящиеся между repeat и until, выполняются до тех пор, пока  условие ложно (значение выражения условие  равно False).

   В качестве примера использования инструкции repeat рассмотрим программу, которая проверяет, является ли введенное пользователем число простым (как известно, число называется простым, если оно делится только на единицу и само на себя). Например, число 21 — обычное (делится на 3), а число 17 — простое (делится только на 1 и на 17). Проверить, является ли число n простым, можно делением числа n на два, на три и т. д. до n и проверкой остатка после каждого деления. Если после очередного деления остаток равен нулю, то это означает, что найдено число, на которое n делится без остатка. Сравнив n и число, на которое n разделилось без остатка, можно определить, является ли n простым числом.

   Форма приложения Простое число изображена на рис., программа приведена в листинге.

Листинг. Простое число 

unit simple_;

interface

uses

   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

   TForm1 = class(TForm)

       Button1: TButton; // кнопка Проверить 

       Label1: TLabel;

       Edit1: TEdit; // поле ввода числа 

       Label2: TLabel; // поле вывода результата 

       procedure Button1ClickfSender: TObject);

   private

       { Private declarations }

   public

       { Public declarations }

   end;

var

   Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.ButtonlClick(Sender: TObject) ;

var

   n: integer; // проверяемое число 

   d: integer; // делитель 

   r: integer; // остаток от деления n на d 

begin

   n:=StrToInt(Editl.text);

   d := 2; // сначала будем делить на два 

   repeat

       r := n mod d;

       if r <> 0 // n не разделилось нацело на d 

           then d := d + 1;

   until r = 0; // найдено число, на которое n разделилось без остатка 

   label2.caption:=Edit1.text;

   if d = n

       then Label2.caption:=label2.caption + ' – простое число.'

       else label2.caption:=label2.caption + ' – обычное число.';

end;

end.

Инструкция goto

   Инструкции if и case используются для перехода к последовательности инструкций программы в зависимости от некоторого условия. Поэтому их иногда называют инструкциями условного перехода. Помимо этих инструкций управления ходом выполнения программы существует еще одна — инструкция безусловного перехода goto.

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

goto Метка

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

   Метка, используемая в инструкции goto, должна быть объявлена в разделе меток, который начинается словом label и располагается перед разделом объявления переменных. В программе метка ставится перед инструкцией, к которой должен быть выполнен переход в результате выполнения инструкции goto. Сразу после метки ставится двоеточие.

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

Листинг. Простое число (использование инструкции goto)

procedure TForm1.Button1Click(Sender: TObject);

   label // раздел объявления меток 

   bye;

var

   n: integer; // проверяемое число 

   d: integer; // делитель 

   r: integer; // остаток от деления n на d 

begin

   n:=StrToInt(Edit1.text);

   if n <= 0 then

       begin

           MessageDlg('Число должно быть больше нуля.',

                                mtError, [mbOk] , 0) ;

           Edit1.text:= ";

           goto bye;

       end;

   // введено положительное число

   d:= 2; // сначала будем делить на два 

   repeat

       r:= n mod d;

       if r <> 0 // n не разделилось нацело на d 

           then d:= d + 1;

   until r = 0;

   label2.caption:=Editl.text;

   if d = n

       then label2.caption:=label2.caption

                                                            + ' – простое число.'

       else label2.caption:=label2.caption

                                                            +' – обычное число.';

bye:

end;

Контрольные вопросы

  1.  Понятие условия.
  2.  Инструкция IF и ее запись в программе.
  3.  Инструкция CASE и ее запись  в программе.
  4.  Понятие цикла.
  5.  Инструкция FOR и ее запись в программе.
  6.  Инструкция WHILE и ее запись в программе.
  7.  Инструкция repeat и ее запись в программе.
  8.  Инструкция goto и ее запись в программе.

Резюме

  1.  В программе условие – это выражение логического типа (Boolean), которое может принимать одно из двух значений: True (истина) или False (ложь).
  2.  Инструкция IF позволяет выбрать один из двух возможных вариантов развития программы. Выбор осуществляется в зависимости от выполнения условия.
  3.  Инструкция case позволяет эффективно реализовать множественный выбор.
  4.  Алгоритм, в котором есть последовательность операций (группа инструкций), которая должна быть выполнена несколько раз, называется циклическим, а сама последовательность операций именуется циклом.
  5.  Инструкция (цикл) while используется в том случае, если некоторую последовательность действий (инструкций программы) надо выполнить несколько раз, причем необходимое число повторений во время разработки программы неизвестно и может быть определено только во время работы программы.
  6.  Инструкция repeat, используется в программе в том случае, если необходимо выполнить повторные вычисления (организовать цикл), но число повторений во время разработки программы неизвестно и может быть определено только во время работы программы, т. е. определяется ходом вычислений.

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

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


 

А также другие работы, которые могут Вас заинтересовать

42846. Разработка базы данных пациентов районной поликлиники 6.88 MB
  Описание таблиц и логической структуры базы данных. Схема данных. 29 Введение: Целью данной курсовой является создание базы данных для работников регистратуры поликлиники.
42847. Г. Маркузе и Франкфуртская социологическая школа 72.11 KB
  Среди центров и школ западной философии, которые на протяжении целых десятилетий сохраняли и до сих пор еще сохраняют заметное влияние на философию, социальную мысль всего мира, надо особо выделить так называемую франкфуртскую школу. Группа талантливых, а в политическом отношении радикально-критически настроенных философов, социологов, экономистов, историков, литераторов объединилась вокруг основанного в 1923 г. при Франкфуртском университете Института социальных исследований.
42848. Габаритний розрахунок монокуляра з вибором оптичної схеми об’єктива і окуляра 880.79 KB
  До таких призм можно віднести призми АкР90 Лемана ВкЛ0 Шмідта ВкР45 Систему двох призм : Аббе Ак0 Пехана Пк0 Порро Іго роду Систему трьох призм : Порро ІІго роду. Призма – оптична деталь що має у своєму складі заломлюючі та відбиваючі поверхні які утворюють між собою двогранні кути Позначають призми двома великими літерами і числом яке вказує на кут відхилення осьового променя. Призми які є відбиваючими характеризуються коефіцієнтом: c = d D d – довжина ходу осьового променя; D – діаметр світлового пучка...
42849. Маркетингове дослідження компанії MTI 592.77 KB
  MTI українська компанія багатопрофільний ІТхолдинг один з найбільших гравців ринку інформаційних технологій України яка була заснована у 1991 році. Фактори макро і мікро середи в якому працює MTI. Компанія MTI є одним з найбільш великих в Україні постачальників комп'ютерної і офісної техніки.
42850. Розробка бізнес-плану діяльності підприємства 228.87 KB
  Організаційний план, планування показників по праці. Розраховані такі показники: середня тривалість щорічної відпустки, баланс робочого часу одного середньооблікового робітника, планова тривалість робочої зміни, корисний фонд робочого часу одного виробничого робітника на плановий рік, чисельність робітників на нормованих роботах та загальну чисельність працівників
42851. Розрахунок та оптиматизація характеристик системи електрозв’язку 117.29 KB
  1Перетворення аналогового сигналу в сигнал ІКМ5 2.3 Кодування сигналу та розробка коректую чого кодуза варіантом.4 Опис маніпуляції сигналу. В таблиці застосовані наступні позначення: Рс потужність сигналу Вт; Рс Рш.
42852. ДИЗАЙН: ОСНОВНІ ПОНЯТТЯ І СТИЛІ ІНТЕР'ЄРУ. КЛАСИЧНИЙ СТИЛЬ ДИЗАЙНУ В ІНТЕРЄРІ 55.75 KB
  Дизайн виник на початку 20 ст. як реакція на стихійне формування візуальних і функціональних властивостей предметного середовища. Дизайн розробляє зразки її раціональної побудови, відповідні складного функціонуванню сучасного суспільства. Іноді під дизайном розуміють лише одну з його областей - проектування естетичних властивостей промислових виробів. Дизайн, однак, вирішує більш широкі соціально-технічні проблеми - функціонування виробництва, споживання, існування людей в предметній середовищі.
42853. Організація перевезень вантажів у змішаному сполученні 281.5 KB
  Одним з головних факторів, визначаючим ефективність перевізного процесу та умов функціонування обслуговуючим автомобільним транспортом підприємств, є партіонність перевезень. На сьогоднішній день перевезення дрібнопартіонних вантажів займає важливу роль у транспортному процесі. Цей вид перевезень набув популярності серед доставки товарів широкого вжитку (продуктів харчування, промислових товарів та ін.) на короткі відстані (мережа торгових кіосків, магазинів, супермаркетів міста).
42854. ГОСУДАРСТВЕННЫЕ РАСХОДЫ И ИХ РОЛЬ В РЕАЛИЗАЦИИ ФУНКЦИЙ СЕКТОРА ГОСУДАРСТВЕННОГО УПРАВЛЕНИЯ 895.5 KB
  В любом государстве существуют и решаются проблемы, ради которых и существует государство. В гражданском, демократическом обществе предполагается, что государство призвано осуществлять функции, порученные ему его гражданами. Содержание общественных (государственных и муниципальных) расходов непосредственно связано с функциями федеральных