Delphi для начинающих – Урок 4 – Работа с переменными

A

AngelOfLove

Original poster
В этом уроке я покажу способы работы с переменными.Переменные, как вы уже догадываетесь должны иметь значение. Всегда, прежде чем работать с переменной, нужно задать ей первоначальное значение. Для задавания или изменения значения переменной в Delphi, используют оператор присваивания «:=». Присваивание выглядит следующим образом:

имя переменной := значение переменной;

Например, чтобы задать переменной a типа integer значение 100 необходимо указать следующий код:

a := 100;

Для разных типов переменных существуют разные способы указания значения для них. Например, чтобы указать значение строковому типу переменных (string,char), само значение нужно указывать в кавычках. Для переменных, содержащих число, значение нужно указывать без кавычек.


Задание значения строковой переменной типа string:

a := 'this is a string';

Задание значения переменной типа real:

a := 3.14;

В качестве значения, может выступать другая переменная такого же типа, например зададим переменной a типа integer значение переменной b типа integer:

1
2
b := 10;
a := b;
Таким образом переменная a стала равна переменной b.

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

a := 3.14*(c-b)/10+sin(c);

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


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

a := trunc(3.14);

В результате, a будет равно 3.

Очень часто перед программистом встает задача присвоить числовой переменной значение строковой или наоборот.

a:=strtoint(b); — перевод из строковой переменной в целочисленную.

a:=strtofloat(b); — перевод из строковой переменной в десятичную дробь.

a:=inttostr(b); — перевод из целочисленной переменной в строковую.

a:=floattostr(b); — перевод из десятичной дроби в строковую переменную.

Существует также очень полезная функция showmessage, которая способна выводить значения одной или нескольких переменных. Очень важно вводить в качестве содержимого этой функции значение типа string, т.е. все числа нужно будет перевести в тип string. Делается это просто и прямо внутри самой функции:

showmessage('значение переменной A='+inttostr(a)+' Значение переменной B='+inttostr(b));

Стоит отметить, что строки можно также складывать, как и числа, т.е. сложив две строки: «abc» и «123» — получим строку «abc123″ или «123abc» в зависимости от последовательности сложения.

str1 := 'abc' + '123';
 
Название темы
Автор Заголовок Раздел Ответы Дата
A Delphi для начинающих. Урок 11. Процедуры и функции С/C++ 0
A Delphi для начинающих. Урок 10. Циклы. Работа с массивами С/C++ 0
A Delphi для начинающих – Урок 9 – Массивы С/C++ 0
A Delphi для начинающих – Урок 8 – Условия. Оператор Case С/C++ 0
A Delphi для начинающих – Урок 7 – Условия. Оператор IF С/C++ 0
A Delphi для начинающих – Урок 6 – Пишем свой калькулятор С/C++ 0
A Delphi для начинающих – Урок 5 – Работаем с компонентами С/C++ 0
A Delphi для начинающих – Урок 3 – Создание переменных С/C++ 0
A Delphi для начинающих – Урок 2 — События С/C++ 0
A Delphi для начинающих — Урок 1 — Среда разработки Delphi С/C++ 0
C Реверс-инжирниринг бота на Delphi, есть проблемы Вопросы и интересы 0
M [Delphi] Работа VKAPI, на примере бота С/C++ 3
T Пишем WinLocker на Delphi С/C++ 0
D Нужна помощь по Delphi! ЗАПЛАЧУ! Другие ЯП 1
VAVAN Продам исход стиллера (ЯП Delphi) Продажа софта 1
A Потоки в Delphi. TThread С/C++ 0
A Delphi. Урок 17. Типы С/C++ 0
A Delphi. Урок 16. Исключительные ситуации С/C++ 0
A Delphi. Урок 15. Математические операции С/C++ 0
A Delphi. Урок 14. Работа со списками строк TStringList или «сложные» типы С/C++ 0
A Delphi. Урок 13. Работа со строками С/C++ 0
A Delphi. Урок 12. Преобразование числа в строку и строки в число С/C++ 0
A Простые шутку в DELPHI С/C++ 5
A Мои старые исходники на Delphi С/C++ 1
A Несколько шпор по Delphi =) С/C++ 3
L Загружаем компьютер другу. Delphi,rad studio Другие ЯП 0
I Country IP Ranges Generator v1.0 [Source][Delphi] Другие ЯП 3
B Помощь [Delphi] Другие ЯП 0
B VK Post Grabber [Source][Delphi] Другие ЯП 0
Admin [delphi] downloader winapi Другие ЯП 0
G Продам Продам Телеграм группы для безопасного инвайта Куплю/Продам 0
Support81 ЦБ РФ и Росфинмониторинг тестируют платформу для контроля криптовалютных операций Новости в сети 0
Support81 Майнинг и вымогательство: OpenMetadata стала площадкой для инвестиций в недвижимость Китая Новости в сети 0
Support81 Ботнет в каждом доме: хакеры снова порабощают роутеры TP-Link для DDoS-атак Новости в сети 0
Support81 Telegram устранил 0day, используемый для удаленного запуска кода Новости в сети 0
Emilio_Gaviriya Статья SSTImap: Инновационный инструмент для анализа городского пространства. Анонимность и приватность 0
Emilio_Gaviriya Статья Защита и надёжность: Важность патчей для Microsoft Active Directory. Вирусология 0
El_IRBIS Интересно Lookyloo: Путешествие в глубины интернета с помощью инструмента для анализа веб-страниц. Уязвимости и взлом 0
El_IRBIS Интересно Набор инструментов для глубокой проверки пакетов с открытым исходным кодом. Уязвимости и взлом 0
M Нужен VPN для роутера Вопросы и интересы 0
Tera_shop Продам Telegram аккаунты для рассылки, инвайта (Session + Json, Tdata) Tear-shop.ru Купить аккаунты на сайте: https://tear-shop.ru/ Tear-shop - Магазин Аккаунты/Админки/Документы 1
Emilio_Gaviriya Статья Censys: Поисковик для кибербезопасности в интернете. Уязвимости и взлом 0
Emilio_Gaviriya Статья AlienVault: Всё, что вам нужно знать о платформе для обнаружения угроз. Уязвимости и взлом 0
Emilio_Gaviriya OSINT: Подборка инструментов для автоматизации разведки. Статьи 0
Support81 VPN – ловушка для Android: как приложения превращают смартфоны в зомби Новости в сети 0
Support81 Токены Discord нарасхват: взлом Top.gg обернулся кошмаром для разработчиков Новости в сети 0
Emilio_Gaviriya Статья Платформы для проверки и улучшения навыков белого хакинга. Уязвимости и взлом 0
Emilio_Gaviriya Статья Инструмент для сбора whois-истории. Уязвимости и взлом 0
Support81 82 участника, 1,3 миллиарда и...отсрочка: что происходит с российской платформой для обмена кодом Новости в сети 0
Support81 DarkGPT: незаменимый OSINT-инструмент для специалистов в сфере кибербезопасности Новости в сети 0

Название темы