50886

Программирование в Delphi. Разработка циклических программ. Цикл с пошаговой сменой аргумента

Лабораторная работа

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

Научиться составлять и реализовывать программы решения задач с использованием оператора цикла с пошаговой сменой аргумента FOR. Эта последовательность действий образует тело цикла. В теле цикла используется переменная которая при каждом повторении тела цикла меняется и определяет число повторений цикла. Такая переменная называется параметром цикла.

Русский

2014-02-01

5.46 MB

15 чел.

Лабораторная работа №5

Основы объектно-ориентированного программирования в визуальной среде программирования Delphi.

Тема: Программирование  в Delphi. Разработка циклических программ. Цикл с пошаговой сменой      аргумента.

Цель: Расширить навыки работы в визуальной среде программирования Delphi. Научиться составлять и реализовывать программы решения задач с использованием оператора цикла с пошаговой сменой аргумента FOR. 

Теоретические сведения

Цикл – команда исполнителю программы (компьютеру) многократно, но не до бесконечности, повторять указанную последовательность команд

Циклическая структура – это алгоритм, в котором предусмотрено неоднократное повторение одной и той же последовательности действий. Эта последовательность действий образует тело цикла. В теле цикла используется переменная, которая при каждом повторении тела цикла меняется и определяет число повторений цикла. Такая переменная называется параметром цикла.

Цикл с пошаговой сменой аргумента – FOR (ДЛЯ) используется в тех случаях, когда число повторений цикла заранее известно.

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

Циклы for делятся на два вида: с увеличением счетчика и уменьшением счетчика.

Рассмотрим пример цикла for с увеличением счетчика Синтаксис такого счетчика имеет следующий вид: for Счетчик Цикла: = Начальное Значение to Конечное Значение do

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

ОператорМ;
end;

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

  1.  Запустите Delphi
  2.  Поместите на форму три компонента Edit. Edit1 используйте для ввода начального значения счетчика цикла, Edit2 используйте для ввода конечного значения счетчика цикла. Результат проведенных вычислений поместите в компонент Edit3
  3.   Поместите на форму компонент Button1. Используя свойство Caption, введите заголовок "Решение". Поместите компонент Button2, используя свойство Caption, введите заголовок "Очистить". Щелчок по кнопке Button2 будет обнулять содержимое компонента Edit3. Запишите программный код:
  4.  procedure TForm1.Button1Click (Sender: TObject);
    var
    i
    :Integer;
    X,Y:Integer;
    begin
    X:= StrToInt(Edit1.Text);
    Y:= StrToInt(Edit2.Text);
    for i:= X to Y do
    X:= X + 1;
    Edit3.Text:= IntToStr(X);
    end;

    procedure TForm1.Button2Click (Sender: TObject);
    begin
    Edit3.Text:= '';
    end;
    end.

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

Синтаксис цикла for с уменьшением значения счетчика: for Счетчик Цикла: := Начальное Значение downto Конечное Значение do

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

ОператорМ;
end;

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

Поместите на форму компонент Edit1 и Button1. Запишите программный код для расчета некоторого значения:

procedure TForm1.Button1Click(Sender: TObject);
var
I,Min: Integer;
begin
Min:= 25;
for I:= 10 downto 1 do
Min:= Min — I;
Edit1.Text:= IntToStr(Min);
end;
end.

Цикл for начинается зарезервированным словом for. За ним следует оператор присваивания, инициирующий величину счетчика цикла. Переменная в левой части оператора присваивания — счетчик цикла. Это может быть произвольная переменная порядкового типа, обычно Integer. Справа от операции присваивания — выражение, задающее начальное значение счетчика цикла.

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

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

За инициализацией счетчика следует ключевое слово to или downto, которое определяет тип цикла: с возрастающим значением счетчика или с убывающим.

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

После конечного значения счетчика цикла следует зарезервированное слово do, а затем тело цикла. Если в цикле используется больше одного оператора, то все тело цикла заключается в блок begin — end.

Порядок выполнения работы

  1.  Загружаем среду программирования Delphi. Пуск ПрограммыBorland DelphiDelphi 7.
  2.  Задание 1 Составить блок-схему и написать программу нахождения суммы ряда

  1.  Создадим форму   

  1.  Составляем  блок-схему и программу решения задачи  

Листинг программы

procedure TForm1.Button3Click(Sender: TObject);

begin

Close

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Edit1.Text:='';

Edit2.Text:='';

Edit3.Text:='';

end;

procedure TForm1.Button1Click(Sender: TObject);

var

i:Integer;

n:Integer;

S,a:real;

begin

  1.  

a:=StrToFloat(Edit1.Text);

n:= StrToInt(Edit2.Text);

s:=0;

for i:= 1 to n do

S:=s+(a*sqr(i)+1);

Edit3.Text:= FloatToStr(S);

end;

end.

  1.  Задание 2

Написать программу и нарисовать блок-схему вычисления значения функции у=x*sin(x) на интервале [m,k]

  1.  Создаем форму

Листинг программы для кнопки «Считать»

procedure TForm1.Button1Click(Sender: TObject);

   var

   m,k,i,n:integer;

   s:real;

begin

    m:=StrToInt(Edit1.Text);

    k:=StrToInt(Edit2.Text);

    S:=0;

    For i:=m to k do

    begin

    S:= s+ i*sin(i);

    edit3.Text:=FloattoStr(s);

end;

end;

end.

варианта

Задание 3

1

2

3

4

5

6

7

8

9

10

11

12


Задание 4

п/п

Функции f (x)

m

k

1

x2 / cos(x)

1

10

2

x+sin(x)

-5

5

3

sin(x)+cos(x)

-10

10

4

x+cos(x)

0

10

5

x-tg(x)

-3

7

6

x - sin2(x)

0

10

7

-7

3

8

(x+34)/x3

1

10

9

sin2(x) – cos (x)

-3

7

10

x + ctg(x)

-7

3

11

ctg(x) – 2x

2

12

12

sin(x)/x

1

11

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

  1.  Что такое цикл?
  2.  Тело цикла – это?
  3.  Циклическая структура – это?
  4.  Параметр цикла – это?
  5.  Когда используется цикл с пошаговой сменной аргумента?
  6.  Чему равен шаг изменения цикла For?
  7.  Какие значения может принимать шаг цикла FOR?
  8.  По какой формуле определяется количество повторений в цикле?
  9.  Какого типа параметр цикла?
  10.  Как выглядит конструкция оператора если необходимо выполнить более одного оператора?

 

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

60819. Навчання читання на уроках англійської мови в початковій школі 236 KB
  Необхідно приділяти особливу увагу навчанню молодших школярів таких видів мовленнєвої діяльності як читання аудіювання говоріння. Читання іноземною мовою як вид мовленнєвої діяльності...
60821. Гайдамаки. Складність історичної долі українського народу. Сюжетні лінії твору, кульмінаційні вершини. Посталий народ як герой поеми. Образ Яреми. Заклик до єднання словянських народів 72.5 KB
  Девятикласники називають інші джерела: розповіді перекази про повстання які чув Шевченко від старожилів історичні матеріали. 1768 повстання селян що ввійшло в історію під назвою Коліївщина.
60825. Расчёт на прочность рамной стержневой конструкции 390.5 KB
  Под действием вертикальной нагрузки балки рамы получаем изгиб в вертикальной плоскости и кручение. Для упрощения будем пренебрегать сопротивлению балок кручению, что равносильно введению шарнирных связей между балками