ПредишенСледващото

Знаците и константи.

Специални знаци и резервирани думи

Designer използва следните ASCII символи, определени от подгрупи:

  • Букви от азбуката от А до Z, за да Z, А до Z, за да Z, характера долна
  • Фигури - арабски 0-9
  • Spaces - характера пространство (ASCII 32)

Специални символи и запазени думи представляват символи, които имат един или повече фиксирани стойности. Специални знаци са следните знаци. + - * / = <>. ()
Следните символи двойки и специални символи. <=>= = //

Таблица 1. Резервиран думи.

Низ от знаци,

низ характер представлява поредица, съдържаща нула или повече герои от разширената ASCII код характер комплект (Приложение Б), записани в един програмен ред и затворени в единични кавички (апострофи). Символен низ, съдържащ нищо между апострофи се нарича празен низ. Умение съдържа дължината на символен низ от действителния брой на героите между apostrafami. Ние даваме няколко примера за символни низове.

"дизайнерски" Изпълнители
"CMOS - комплементарна двойка метал-оксид-полупроводник"
"!"
'' (Празна проба)

Постоянно израз - израз, който може да бъде оценена от интерпретатора като на практика няма изпълнение на програмата. Ето някои примери за постоянни изрази.

  • цяло число
  • низ
  • Булева
  • Дефинирани от потребителя тип (клас)

цяло число

Конструкторът число, представено на 32-битово цяло число със знак. Диапазонът на стойностите.
-2147483648. 2147483647

Perc Start ()
изход -4 * 343/1 + (- 45 * 5)
Con Процент

Булева

Булева стойност означен вградени идентификатори константи .l. (False) и .i. (Вярно).

Perc Start ()
Output (.i. Или .L.) И (.i. И .i.)
Eto_logicheskiy_tip: = .i.
Con Процент

низ

Стойността на тип низ е последователност от символи с динамично дължина атрибут (в зависимост от действителния брой на героите по време на изпълнението на програмата). Типът на низ конструктор е представена като поредица с нулева прекратява (Null-прекратено низ). Текущата стойност на дължината на атрибута може да се получи с помощта на стандартна функция DlinaStr.

Perc Start ()
Заглавие: Конструктор на Изпълнител = 'трябва да умре. "
Заключение "гр Горно" + "Altaisk"
Con Процент

Тип персонализирано

ОГРАНИЧАВАНЕ. Невярно не може да бъде дефинирана от потребителя тип.

А клас може да наследи от друг клас компонент. Ако Т2 наследява от Т1, Т2 след това се генерира от Т1 и Т1 има предшественик на T2. Когато Т1 - базовия клас, и Т2 - получени.
В наследството е преходен, т.е. ако T3 наследява от Т2 и Т1 наследява от Т2, Т3 след наследява от същата Т1.

Клас квадрат (точка)
X2, Y2
Процент Draw ()
квадрат (X1, Y1, X2, Y2, clGreen)
Con процента
Con клас

Изрази се състои от оператори и операнди. Повечето оператори в конструктора са двоични, т.е. съдържат два операнда. Останалите оператори са унарна и съдържат само един операнд. Бинарните оператори, използващи конвенционални алгебрични представителство, например. A + B. операция унарна оператори винаги предхожда операнд, например, -В. В по-сложна изрази ред, в който се извършват операции, операции, съответстващи на приоритета (вж. Таблица 2).

Таблица 2. Оператор Предимство.

За определяне на предимство на операторите, има три основни правила:
1. операнд, който се намира между двата оператора с различни приоритети, свързани с оператор, който има по-висок приоритет.
2. операнд се намира между два оператора с еднакъв приоритет, свързани с оператор, който е на лявата му.
3. Изразът в скоби преди извършване изчислява като отделен операнд.

Операторите с еднакъв приоритет обикновено се извършват от ляво на дясно. Операторите са разделени на аритметични оператори, логически оператори, низови оператори.

Пример на изразите:

Perc Start ()
Заключение 34/2 мод 3
Seal (43> = 3 * 4)
Con Процент

В следващата таблица са видовете операнди и резултати за едноместно и двоични аритметични действия.

Таблица 3. двоични аритметични операции.

Забележка: + оператора се използва също и за работа с низове.


Таблица 4. едноместно аритметични операции.

Perc Start ()
ЗАКЛЮЧЕНИЯ г (-34 + 3)> 4 + 2 * 3
Печат -3 * -3
Con Процент

Логическите оператори. Операндите и логически операции резултати са показани в таблица 5.

Таблица 5. логически операции.

ЗАБЕЛЕЖКА. Оператор НЕ (инвертор) е на едноместно оператор.

Резултатите от тези операции отговарят на обичайната Булева логика. Например, експресия на А и В се .I стойност. (Вярно) само ако и двата операнда imeejut вярно. String оператори. Видовете операнди и резултати за операциите по низови показани в таблица 6.

Perc Start ()
Заключение НЕ (.i., И .L.)
Seal (43> = 3 * 4) или .i.
Con Процент

Таблица 6. String операции.

Perc Start ()
Заключение DlinaStr ( "Hello World!")
Печат "PEACE" + "-" + "Карибски пирати:
Con Процент

Релационни оператори. Операндите и резултати от операциите за съотношението е показано в таблица 7.

Таблица 7. връзка операции.

По-малко или равно

По-голяма или равна

Perc Start ()
Заключение NO (4 <= 5)
Seal (43> = 3 * 4) и (4 <446)
Con Процент

Операторите описват тези алгоритмични стъпки, за да се извърши. Прости отчети. Обикновено оператор е оператор, който не съдържа други оператори. Прости отчети.

1. Операторът на задача
2. Процедурата по оператор повикване

Отчетът за възлагане замества текущата стойност с нова стойност, която се определя от израза. Ето някои примери за оператора за присвояване.

X_Koordinata: = Y + Z
D: = B * Б - 4 * A * C
StrSoobscheniya: = "Hello" + "всичко!"
Сума: = SummaDvuh (А, В)


Обадете процедури на оператора.

VyvodSoobscheniya ( "опасност.")
Exchange (А, М, М) кръг (100,100,10, clRed)
Robot.Idti_Vniz ()

// Две polednie скоби е необходимо (дори и ако няма параметри)
Изчисляване изход ()
Сума: = Сума (А, 63)
maks_znach: = Максимална (147, J + 34)

Структурните оператори.
1. Условно оператор
2. Цикъл на оператора

Синтаксис АКО може да се представи по следния начин.

ако <выражение>
[Operator_1]
[Operator_2]
.
[Operator_N]
всички

ако <выражение>
[Operator_1]
[Operator_2]
.
[Operator_N]
в противен случай
[Operator_1]
[Operator_2]
.
[Operator_N]
всички

От гледна точка на резултата трябва да се получи, като логичен тип. Ако резултатът от израза е истинското значение на (.i.), След това изявление след израза. Ако резултатът от израза е .L на стойност. и там е ключовата дума ELSE, а след това изявление след ключовата дума друго. Ако ключовата дума ELSE отсъства, той не извършва никакви оператор. Ето два примера АКО изявление.

ако X <15
X. = X + Y
в противен случай
Z. = 15
всички

ако .i.
MyObj.ShowInfo ()
всички

Loop отчети, повтори изпълнението на определени оператори. Ако броят на повторенията е предварително известен, дизайнът е подходящ за оператора или повтаря. В противен случай, трябва да използвате операторите са.

Операторите ДОКАТО линия.

ДОКАТО изявление контур съдържа израз, който контролира повторно изпълнение на инструкциите в изявлението.

докато <выражение>
[Operator_1]
[Operator_2]
.
[Operator_N]
KC

Изразът с което повторение на оператора за контрол трябва да бъде булева. Изчисляване на това е направено преди вътрешният оператор тя ще бъде изпълнена. Вътрешно се изпълнява оператор многократно, докато изразът е .и .. Ако изразът в самото начало е настроен да .L .. тогава операторът, съдържаща се в оператора, докато цикълът не се изпълнява нито веднъж. Примери ДОКАТО изявление контур могат да служат.

докато Koordinata_po_X <> 10
Koordinata_po_X: = 1 + Koordinata_po_X
KC

докато аз <10 и Окно.Полное = .Л.
Okno.VyvodTselogo (I)
I: = I + 1
KC

Цикъл оператор за.

ЗА контур изявление предизвиква повторно изпълнение на инструкциите на оператора (ите), докато стойността на променлив контрол (брояч цикъл) достигне определена стойност на.

за <имя_управ_переменной> от <начальное_знач> за <конечное_знач>
[Operator_1]
[Operator_2]
.
[Operator_N]
KC

Като зададена Величина идентификатор променливата трябва да се използва, което означава променлива. Променливата за контрол трябва да бъде тип число. Началните и крайните стойности трябва да са тип цяло число. Когато операторът започва да се извършва за началните и крайните стойности се определят веднъж и тези стойности се съхраняват в рамките на изпълнението на отчета за. Операторът, който се съдържа в тялото на един оператор за веднъж за всяка стойност в диапазона между началната и крайната стойност. Променливата за контрол винаги се инициализира с първоначалната стойност. Когато операторът използва Мрежа за етап с положителна експресия или не използва стойността на променливата на контрол се увеличава при всяко повторение на velechiny експресия. Ако началната стойност надвишава крайната стойност се съдържа в тялото на оператора за оператора не е доволен. Когато операторът използва Cycle СТЪПКА дума с отрицателна стойност, стойността на променливата на контрол се намалява при всяко повторение на velechiny експресия. Ако началната стойност в тази декларация е по-малко от окончателната стойност, изявлението не се изпълнява, съдържаща се в тялото на оператора цикъл. Ето примери за оператора на цикъл.

За AskNomer 128-255
печатни знака (AskNomer)
Cp

// отпечатва нечетните числа до 100
към и от 1 до 100 Етап 2
отпечатване и
KC

// отпечатва четни до 100
и за 2 до 100 Етап 2
отпечатване и
KC

// отпечатва всички четни номера в интервала [-100, 100]
към и от стъпка 100 до -100 -2
заключение и
KC

В конструктора има запазено име за специален метод - Init. Init - това е конструктора на класа, т.е. метод, който се извиква автоматично при инстанция на класа.

// клас с конструктор.
клас
Балон Color, том
процента Init ()
изход "се обадите на строителя. Създаване на даден обект. "
процентен дял
Con клас

обект <Имя_Объекта> = <Имя_Класса>

Пример. Обект MoyKvadrat = Square

Процедури и функции.

на сто <имя_процедуры> ([<список_формальных_параметров>])
[Operator_1]
[Operator_2]
.
[Operator_N]
Con Процент

Подпис на процедура - име на процедура, както и списък на нейните формални параметри.

Обработка Perc (е, л)
Ако р> л =
изход "е по-голямо от или равно на п '
в противен случай
изход "р по-малко от L '
всички
Con Процент

Фунг <имя_функции> ([<список_формальных_параметров>])
[Operator_1]
[Operator_2]
.
[Operator_N]
Con Fun

Подпис на функцията - името на функцията и списък на нейните формални параметри.

заглавието на функция съдържа идентификатор за функцията, формалните параметри (ако присъства). Функцията се активира чрез извикване на функция в израз. идентификатор Функция повикване съдържа необходимите функции и действителните параметри. Функцията се изпълнява в израза за изчисление и операнд стойност става връщането стойност на функцията. Операторът на функцията съдържа твърдения, които се изпълняват по функция за активиране. Резултатът от функцията, присвоена чрез обратно ключовата дума.

Fun Max (А, В)
Ако A> B
връщането
в противен случай
Връща B
всички
Con Fun

// Пример рекурсия
Fung Факториел (брой)
Ако броят = 1
се върне 1
в противен случай
Връща номера * факторен (брой - 1)
всички
Con Fun

брой клас
Pole1
Fung VzyatPole1 ()
Връща Field1
измамят Фе
процента UstanovitPole1 (стойност)
Field1 = стойност
процентен дял
Con клас

Строителите - специализиран вид методи. Комплекти използват за инициализиране на новосъздадения обект. Обикновено инициализация на базата на стойностите за настройка на полетата в конструктора на класа. Подобно на други методи, konstrutory може да бъде наследствено. Примери konstraktorov:

Клас Номер Pole1
// конструктор
процента Init ()
Field1: = 0
процентен дял
Fung VzyatPole1 ()
Връща Field1
измамят Фе
процента UstanovitPole1 (стойност)
Field1 = стойност
процентен дял
Con клас

Класове и обекти

Изпълнители дизайнер на средствата за изграждане на класове и обекти. Всеки обект в Designer е от тип; това е класа, към който принадлежи на обекта.

Клас (клас) - съвкупност от променливи, в съчетание с набор от свързани функции.

Object (предмет) - отделна инстанция на класа.

Във всеки клас има два вида членове: полета и методи.

  • Невярно (област) --member променлива, съдържаща данни за класа и обекти.
  • Метод (метод) - член функция съдържа изпълним код на класа.

Занятията се използват за изграждане типове, дефинирани от потребителя данни и улеснява споделянето на код. По-специално, ние можем да получите нов клас от едно или повече съществуващи класове, и този нов клас ще съдържа всички функции на класа, от която е създаден. Освен това, този нов клас може да се определи с допълнителни данни и функции, които са уникални обекти на новия тип, а дори и предефинирани функции, които този клас наследява от своя базов клас (базов клас). По този начин, наследството на класа дава максимална гъвкавост при формирането на нови класове, подобни на съществуващите, но не и идентични с тях.

клас <имя_класса> [(<имя_предка>)]
//
// тяло клас е описание на методи и полета.
//
Con клас

С други думи, този клас - описание на нещо, и на обекта - това е нещо, което е създадено в съответствие с това описание.

обект <имя_объекта> = <имя_класса>

Всички обекти в конструктора, обявени на глобално ниво и имат глобален обхват.

клас Fish
тегло, цвят, име
етаж, жилища
процента Init ()
Тегло: 0 =
цвят = ''
Заглавното = ''
етаж: 0 =
жилища: = ''
процентен дял

процента плуване ()
печат "Swim >> @@ ===> '
процентен дял

Маскирани процента ()
печат "маскиране OO"
процентен дял
против клас

щука риба обект =

процента Start ()
schuka.Plyt ()
schuka.Maskirovatsya ()
процентен дял

Свързани статии

Подкрепете проекта - споделете линка, благодаря!