Єдина Країна!

Головне меню

Наша кнопка

Українські уроки про ІТ

Друзі

Підтримка української армії


Головна Програмування - Delphi Основні логічні конструкції у мові програмування Delphi

Основні логічні конструкції у мові програмування Delphi
Написав admin   
Неділя, 11 вересня 2011 21:09
Переглядів: 6347

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

До речі, якщо ви знаєте англійську хоча б на базовому рівні( а це дуже допоможе вам у вивченні програмування), то ви без проблем зрозумієте усі конструкції.

 

Отже, розглянемо основні логічні конструкції у мові програмування Delphi.

 

Конструкції розгалуження

 

Часто використовувана конструкція для розгалуження коду

If  умова then блок_інструкцій else блок_інструкцій_2;

Дослівно можна перекласти як “Якщо умова виконується, тоді виконати блок інструкцій, інакше виконати блок інструкцій 2”. Приведу побутовий приклад — якщо продзвенів дзвінок, тоді вийти на перерву, інакше сидимо за партою. В данному випадку «продзвенів дзвінок» це умова. Будь-яка умова може мати тільки два значення  — True(Правда або Істина) і False(Неправда або Хибний). Отже, якщо умова виконується і ми отримуємо значення True, тоді “виходимо на перерву”, якщо ж умова повертає значення False, то “сидимо за партою”.

Блоки_операцій можуть містити декілька команд, а не обов’язково одну.

Звичайно у програмі умову і блоки_інструкцій треба буде описувати згідно правил програмування, але основне зрозуміти сенс логічної конструкції.

If умова then блок_інструкцій;

Скорочена версія конструкції без оператора else.

 

 

Конструкція Case використовується для розгалуження багатьох варіантів

Case умова of

Значення1: блок_інструкцій_1;

Значення2: блок_інструкцій_2;

ЗначенняN: блок_інструкцій _N;

End;

Якщо “умова “ збіглась з одним із значень, тоді виконується відповідний блок інструкцій.

Конструкція,наприклад, може використовуватись для створення «світлофора», де умова була б колір,а значення відповідно — червоний,жовтий, зелений. Для кожного кольору виконується свій блок інструкцій.

 

 

Цикли

 

Цикли використовуються для монотонної роботи, коли необхідно виконати блок інструкцій не один раз. Наприклад, розрахувати факторіали, прочитати або записати масиви інформації і т.д.

For початкове_значення_лічильника to кінцеве_значення_лічильника do блок_інструкцій;

Для цього цикла треба вказати початкове значення лічильника(спеціальна змінна) і кінцеве, тоді цикл буде виконувати блок інструкцій і збільшувати лічильник на 1, поки лічильник не досягне кінцевого значення і зупинить цикл. Приведу приклад, обрахунку факторіалу числа 5.

…ініціалізація змінних, ми її ще не розглядали

N:=1;  //задаємо значення для змінної N

For i:=1 to 5 do

N:=N*I;   //при кожному циклові число N множиться на значення лічильника i

//оскільки лічильник набирає значень від 1 до 5, то ми в кінцевому результаті отримаєм число факторіалу 5

 

Існує також інша версія циклу, з єдиною відмінністю, що лічильник кожного разу зменшується на одиницю.

For початкове_значення_лічильника downto кінцеве_значення_лічильника do блок_інструкцій;

 

 

Цикл while має іншу будову, суть його така — доки умова справджується виконуємо блок інструкцій. Тут уже немає задання початкового значення, існує тільки певна умова, яка забезпечує роботу циклу.

While умова do блок_інструкцій;

Важливо також те, що в цьому циклі слід самостійно збільшувати значення лічильника. Виконаєму ту ж задачу з факторіалом і побачимо наскільки змінився код

…ініціалізація змінних, ми її ще не розглядали

N:=1; //задаємо значення для змінної N

i:=1; //задаємо значення для змінної i

while i<6 do //доки змінна i менша 6 (тобто від 1 до 5)

begin

N:=N*I;

i:=i+1;    //збільшуємо лічильник на 1

end;

 

 

Цикл repeat, на відміну від while мусить біти виконаний хоча б раз, це зумовлено його будовою.

Repeat блок_інструкцій until умова;

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

І приклад, все той же, для відчуття різниці:

N:=1;

i:=1;

repeat

begin

N:=N*I;

i:=i+1;

end;

until i>5;  //як бачите те, що умова провіряється вкінці змушує змінити значення на «більше 5»



Сподіваюсь ви зрозуміли основні логічні конструкції, бо вони вам ще знадобляться=))

До наступних уроків!


( 15 Проголосувало )

Схожі статті:
Новіші матеріали:
Старіші матеріали:

Коментарі
Добавити новий
олександр  - delphi   |2011-09-27 16:06:51
дякую!
Адміністратор   |2011-10-02 14:13:08
avatar
Igor   |2012-09-30 05:42:57
avatar гарна стаття, доступно роз'яснено
Залишити коментар
Ім`я:
e-mail:
 
Тема:
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Введіть цей настирливий код
Русская редакция: www.freedom-ru.net & www.joobb.ru

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

Підписка

Хто онлайн?

Немає
На даний момент 36 гостей на сайті

Український рейтинг
TOP.TOPUA.NET