Базові основи написання програмного додатку в Delphi

 

Базові основи написання програмного додатку в Delphi

Оператор for

Цикл for найчастіше використовуеться коли наперед відомо кількість ітерацій (повторів), які потрібно виконати. Оператор for має Наступний синтаксис:

           for початкове значення лічильника (i:=1) 
            to кінцеве значення лічильника (20) 
             do
           begin
             .
             .
             .
             Тіло циклу
             .
             .
             .
           end;
           

Наприклад потрібно піднести 2 у 5-ту степінь, цикл підрахунку буде виглядати наступним чином:

           f:=1;
           for i:=1 to 5 do
           begin
             f:=f*2;
           end;
           

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

 

Оператор while

Цикл while (цикл з передумовою) найчастіше використовується коли наперед не відомо кількість ітерацій і цикл має працювати до тих пір поки буде виконуватись початкова умова. Синтаксис оператора while:

           while умова (i<=20) do
           begin
             .
             .
             .
             Тіло циклу
             .
             .
             .
           end;
           

Наприклад потрібно підрахувати кількість брусків довжиною 1,5м. які отримаються із розпилювання колоди довжиною 20м, цикл підрахунку матиме наступний вигляд:

 

           i:=0;{кількість брусків}
           L:=0;{Загальна довжина відпиляний брусків}
           while L<20 do
           begin
             L:=L+1.5;
             i:=i+1;
           end;
           ShowMessage(’Кількість брусків ’,i);

Оператор repeat

Цикл repeat (цикл з післяумовою) частіше за все використовується коли невідома кількість ітерацій та цикл має працювати до тих пір поки задана умова не стане вірною. Оператор repeat має слідуючу синтаксичну структуру:

           repeat
             .
             .
             .
             Тіло циклу
             .
             .
             .
           until умова (i>20);
           

Наприклад потрібно підрахувати кількість брусків довжиною 1,5м. які отримаються із розпилювання колоди довжиною 20м, цикл підрахунку матиме наступний вигляд:

           i:=0; {кількість брусків}
            L:=0; {Загальна довжина відпиляний брусків}
           repeat
           begin
             L:=L+1.5;
             i:=i+1;
           until L>20;
           ShowMessage(’Кількість брусків ’,i);

 



Процедури та функції обробки рядків

 

Назва функції

Призначення

Length(s: string): integer

Повертає довжину рядка S.

SetLength(var s; newlength: integer)

Встановлює довжину рядка.

Copy(s; index, count: integer): string

Повертає підрядок або сегмент динамічного масиву, що містить Count символів або елементів масиву, починаючи з позиції index. Якщо значення index більше за довжину рядка, повертається порожній рядок. Якщо значення count перевищує кількість символів, що залишилися, то копіюються всі символи до кінця рядка.

Delete(var s: string; index, count: integer)

Знищує підрядок довжиною count символів із рядка S, починаючи з index.

Insert (si: string; var s: string; index: integer)

Вставляє рядок si в рядок s починаючи із index.

Str(x [: width [: decimals ]]; var S)

Перетворює числове значення х в рядок S.

StringOfChar(Ch:Char; Count: Integer): string

Повертає рядок, який містить Count повторень символів Ch.

Val(S; var V; var Code: Integer)

Перетворює рядок S числове значення.

AnsiLowerCase(const   S: string): string

Повертає рядок ANSI S, перетворений до нижнього регістру.

AnsiUpperCase(const   S: string): string

Повертає рядок S, перетворений до верхнього регістру.

CompareStr(const SI, S2: string): Integer

Порівнює два рядки SI та S2 з врахуванням регістра; повертає значення <0, якщо SI<S2, 0, якщо SI=S2, та >0, якщо SI>S2.

Concat(sl [, s2,.... snj: string): string

Повертає рядок si, що є з'єднанням стрічок sj,.... sn, тобто Sl+S2+..+Sn.

Pos(Substr:    string;    S: string): Integer

Повертає позицію (індекс) першого входження Substr в S; якщо Substr немає в S, то повертається 0.

 



Функції перетворення типів

 

Функція

Значення

Round(n)

Округлення дробового числа до найближчого цілого

Тrипс(п)

Перетворення дісного числа в ціле (відкидання дробової частини числа)

IntToStr(n)

Перетворює ціле в стрічку

FloatToStr(n)

Перетворює дійсне в стрічку

FloatToStrf(n,Format, Precisionl,Digits)

Перетворює дійсне в стрічку в форматному вигляді, використовуючи заданий формат Format (можливі значення формату ffGeneral, ffExponent, ffFixed, ffNumber, ffCurrancy), задану точність Precisionl та число розрядів Digits

CurrToStr(n)

Перетворює значення типу Currancy в стрічку

IntToHex(n,Digits)

Перетворює ціле у стрічку, що має принаймні Digits шістнадцяткових цифр

StrToCurr(s)

Перетворює стрічку символів у число типу Currancy

StrToInt(s)

Перетворює стрічку в ціле

StrToFloat(s)

Перетворює стрічку в дійсне

StrToIntDef(s; Default)

Перетворює стрічку s в ціле число. Якщо стрічка не є допустимим цілим, то повертається значення по замовчуванню Default.