50886

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

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

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

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

Русский

2014-02-01

5.46 MB

20 чел.

Лабораторная работа №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.  Как выглядит конструкция оператора если необходимо выполнить более одного оператора?

 

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

30721. Основные этапы первой мировой войны. Факторы поражения германо-австрийского блока 27.5 KB
  В июле 1914 г Германия и Австровенгрия начинают первую мировую войну. Германия хотела сначала вывести из строя Францию чтобы прекратить борьбу на два фронта: Западном и Восточном. 1 этап вторжение в Бельгию где Германия потерпела поражение: в Восточной Пруссии Германия воевала с русскими армиями; в Галиции и Польше где победы достались русским. Германия и АвстроВенгрия были экономически истощены под влиянием революций в России среди военных германии и Австрии усилилась антивоенная агитация народ устал от...
30722. «Новый курс» Результата и его историческое значение 24.5 KB
  Его основная цель состояла в оздоровлении экономики и восстановления доверия граждан к государству. Политика Рузвельта получила название Новый курс который он восстановил государственное регулирование экономики и социальных отношений. Законом об оздоровлении национальной экономики вся промышленность была разделена на 17 групп по отраслям и регулировалась нормативными актами кодексами чести определявшими объем выпуска товаров уровня заработной платы распределение рынков сбыта продолжительность рабочего времени и др....
30723. Эволюция и крах бюрократических режимов в стране ЦЮВЕ 26.5 KB
  было сформировано коалиционное правительство в ГДР. Чехословакия и ГДР несколько условно могут быть отнесены к государствам с довольно высоким уровнем развития Польша Венгрия Хорватия и Словения страны среднего развития а Болгария Румыния четыре другие республики бывшей Югославии Сербия Черногория Македония Босния и Герцеговина Албания низкого. По решению парламентов ГДР и ФРГ с 1 июля 1990 г. ГДР прекратила свое существование вместо нее появились пять новых федеральных земель ФРГ.
30724. Изоляционизм США термин использовавшийся с середины 19 в. 25 KB
  Изоляционизм США термин использовавшийся с середины 19 в. для обозначения направления во внешней политике США в основе которого лежит идея невмешательства в европейские дела и вообще в вооруженные конфликты вне американского континента. складывались под влиянием ряда факторов: географическая обособленность Американского континента создание в США ёмкого внутреннего рынка способствовавшего тому что значительная часть буржуазии мало интересовалась заокеанской экспансией расширение за счет др.
30725. Великобритания выбор новой модели развития в условиях кризиса и распада колониальной империи 28.5 KB
  Черчилль предложил емкую формулировку такого мировидения концепцию трех великих кругов центром пересечения которых считалась Британия. Чем глубже пускала корни биполярная система мира тем активнее Британия искала себе место в условиях противостояния двух сверхдержав. в 19401950е годы Британия все еще ощущала себя империей однородным государством и державой глобального масштаба.
30726. Ялтинская и Потсдамская конференции глав правительств СССР, США и Великобритании. (1945) 22.5 KB
  Участвовали: Сталин СССР Черчилль Великобритания Рузвельт США. Основные решения: 1 Германия делилась на 4 оккупационные зоны СССР Франция Англия США. 3 Согласия СССР вступить в войну с Японией через 3 месяца после капитуляции Германии.
30727. Кризис неолиберализма в США. Переход к неконсервативной модели развития ГМК 26 KB
  Главный замысел неолиберализма снижение регулирующей роли государства в экономике При общем экономическом подъеме неолиберальный курс обусловил неустойчивость и нестабильность развития США Причиной экономического роста в США стали специфические внутренние и внешние факторы конца ХХ в. Экономическое развитие США последнего десятилетия окончательно подтверждает: неолиберальная перестройка это путь к строительству эффективной капиталистической экономики. Неолиберальный режим вызвал крайне нестабильный экономический рост в США в 90е...
30728. Политика «невмешательства» (1935 – 1937 гг.). Мюнхенское соглашение 1938 г. и его значение для судеб мира 24.5 KB
  СССР готово было прийти на помощь Чехословакии в 1935 г у СССР и Чехословакии был договор о взаимопомощи при поддержке Франции у которой с СССР был такой же договор. Но французское правительство не поддержало СССР т. Попытки англофранцузской дипломатии умиротворить нацистов без участи СССР оказались тщетными и тогда Англия и Франция вынуждены были предоставить гарантии безопасности возможным жертвам агрессии Польше Румынии Греции и начали секретные переговоры с Советским союзом. провалились изза недоверия...
30729. Внутренняя политика британских консерваторов в 1930-е гг 23 KB
  Консерваторы выдвигали идею отказа от свободной торговли и перехода к политике протекционизма поддержка национальной экономики и защита от иностранных конкурентов требовали активизаций колониальной политики беспомощного подавления национальноосвободительного движения ирландского народа. В период утверждения капитализма на Западе консерваторы противостояли либерализму и социализму они то приходили к власти то теряли ее. Консерваторы же упорно настаивали на своих методах регулирования экономики основываясь на рыночных отношениях и в...