Урок 2 - Переменные и их типы

Тема в разделе "Delphi", создана пользователем TiportOne, 18 июн 2016.

  1. Оффлайн

    TiportOne ст. рядовой

    На форуме с:
    25 май 2016
    Сообщения:
    21
    Симпатии:
    3
    Баллы:
    3
    Пол:
    Мужской
    Делаю это исключительно ради удовольствия :D
    Все уже забыли про DELPHI,а жаль.
    Надеюсь,что хотя бы модеры оценят.
    Продолжаем наше обучение! В Delphi очень важную роль играют переменные. В процессе работы программы в переменных можно как хранить так и извлекать информацию. Переменные могут иметь разный тип. Например для того, чтобы в переменную записать какой-нибудь текст используется тип String. Для того, что бы записать в переменную число используют тип Integer.

    Вот список основных типов переменных в Delphi:

    • Integer - целые числа из диапазона: -2147483648..+2147483647
    • Shortin - целые числа из диапазона: -128..+127
    • Byte - целые числа из диапазона: 0..+255
    • Real - как целые так и дробные числа из диапазона: 5e-324..1.7e+308
    • Double - схож с типом Real
    • String - строковый тип данных
    • Char - символьный тип данных
    • Bollean - логический тип данных. Может принимать значение True - истина или False - ложь
    С теорией мы закончили, теперь давайте откроем Delphi 7 и создадим новый проект. После этого кидаем на форму знакомый нам компонент Button и еще не знакомый Label. Компонент Label эта такая полезная вещь, в которую можно записать какую-нибудь подпись. Например подпись для другого компонента или просто записать в него автора программы. Попробуйте отыскать компонент Label сами, наводя на все компоненты в вкладке Standard и читая всплывающую подсказку. Кому сложно найти, то это четвертый компонент слева, не считая значка курсора.

    Я всё сделал и у меня получилось вот так:

    [​IMG]

    Сейчас нам нужно создать событие OnClick на кнопке, я надеюсь, что вы помните, как это делать.
    Переменные объявляются между ключевыми словами procedure и begin. Объявление начинается с ключевого словаvar, потом пишется имя переменной и через двоеточие её тип. Заканчивается все как всегда точкой с запятой.

    Создадим переменную S типа String в процедуре OnClick:
    1.procedure TForm1.Button1Click(Sender: TObject);
    2.var S:string;
    3.begin
    4.
    5.end;
    После этого между ключевыми словами begin end присвоим переменной значение равное 'Моя первая переменная'. Присвоение пишется следующим образом. Пишем имя переменной, оператор присвоения := и значение. Если мы записываем информацию типа String, то информация заключается в одинарные кавычки.

    Общий вид:
    1.procedure TForm1.Button1Click(Sender: TObject);
    2.var S:string;
    3.begin
    4.S:='Моя первая переменная';
    5.end;
    Теперь если скомпилировать программу и нажать на кнопку ничего существенного не произойдет, просто в переменную запишется значение и всё. Попробуем вывести значение из переменной. Делается это также просто как и записывается. Выводить значение мы будем в наш Label.

    Синтаксис такой:
    1.Label1.Caption:=S;
    Разберем этот код подробно. Сначала мы написали Label1, потом пишем точку и в Delphi появляется огромный список со свойствами данного компонента. Можно конечно порыться и отыскать там Caption, но мы будем умнее! Мы, после того как поставили точку, напишем еще букву C и Delphi как бы отсортирует все свойства и найдет все, которые начинаются с буквы C. Первым в списке как раз будет свойство Caption.

    [​IMG]

    Выбираем его из списка и нажимаем на Enter. Заметьте, что мы писали Label1.C, но после того, как нажали Enter, Delphi сам дописал название свойства. Далее опять же идет оператор присвоения и наша переменная.

    Вы наверняка спросите: "Зачем же переменная, если можно было написать Label1.Caption:='Моя первая переменная';?". Ответ простой. Это нужно затем, что мы изучаем переменные :).
    Нет, на самом деле так присваивать тоже можно, но представьте такую ситуацию, что вы написали очень большую, популярную программу и у вас, там в программе, пятидесяти компонентам присваивается одно и тоже значение и вот перед вами встала задача: "Поменять это значение на более универсальное и понятное для пользователя".

    Что вы будете делать?



      • В первом случае у вас всем этим компонентам присваивается одна и та же переменная и чтобы изменить всем этим пятидесяти компонентам значение вам просто нужно поменять значение в переменной.
      • Во втором случае вы сидите 20 минут и всё копируете и копируете значение всем пятидесяти компонентам.
    Вывод делайте сами.

    И так, продолжаем! В общем виде должно быть так:
    1.procedure TForm1.Button1Click(Sender: TObject);
    2.var S:string;
    3.begin
    4.S:='Моя первая переменная';
    5.Label1.Caption:=S;
    6.end;
    Компилируем нашу программу и нажимаем на Button (батон/кнопку). Сразу же компонент Label вместо Label1 будет показывать Моя первая переменная.

    На этом хотелось бы закончить, так как я уже устал писать урок :), но я еще не познакомил вас с типом Integer и как присваивать переменную с таким типом. Вы думаете, что присваивать ее нужно точно так же как и переменную типаString, но вы ошибаетесь.
    Дело в том, что свойству Caption вообще у всех компонентов можно присвоить только текстовые значения. Как мы будем присваивать числовой тип если можно только текстовой? Всё проще некуда. Между типами переменных можно как бы переключаться, то есть можно из числового типа сделать текстовой и присвоить его компоненту Label. Этим мы сейчас и займемся.

    Для начала нужно начать сначала :). Объявим переменную с именем I и типом Integer, дописав ее к переменной S. Код:
    1.procedure TForm1.Button1Click(Sender: TObject);
    2.var S:string; I:integer;
    3.begin
    4. ...
    Далее присвоим переменной I значение 21.
    1.I:=21;
    Заметьте, что числовое значение записывается без одинарных кавычек! Теперь присвоим свойству Caption значение переменной I, для этого нужно воспользоваться оператором IntToStr(). Он как бы конвертирует числовой тип в текстовой. В скобках указывается переменная, которую нужно конвертировать.

    Общий вид кода:
    1.procedure TForm1.Button1Click(Sender: TObject);
    2.var S:string; I:integer;
    3.begin
    4.S:='Моя первая переменная';
    5.Label1.Caption:=S;
    6.
    7.I:=21;
    8.Label1.Caption:=IntToStr(I);
    9.end;
    Скомпилируйте программу и вы увидите, что Label будет отображать значение переменной I, то есть 21.

    Ну вот и всё! Удачи!
    Встретимся в следующем уроке!



    --- Добавлено, 18 июн 2016, Дата первого сообщения: 18 июн 2016 ---
    Привел темку в годное состояние
     
  2.  

Поделиться этой страницей

Уважаемый пользователь!

Мы обнаружили, что вы блокируете показ рекламы на нашем сайте.

Просим внести его в список исключения или отключить AdBlock.

Наши материалы предоставляются БЕСПЛАТНО и единственным доходом является реклама.

Спасибо за понимание!