Функции Copy, Pos, процедуры Delete, Insert.

Функция Copy позволяет копировать из строки часть символов. Функция имеет 3 параметра. Copy (st, index, count). St-строка из которой копируют, Index-номер символа, с которого начинается копирование, Count-количество символов, которое будет ...

Тип данных Boolean. Значения True, False в Pascal.

Мы рассмотрели с Вами целый тип данных (integer), вещественный тип (real), символьный (char). В этом уроке мы рассмотрим тип данных, который имеет большое значение в программировании. Логический типBoolean. Одной из особенностей этого типа данных ...

Константы в Pascal.

Иногда, бывает так, что у нас в программе встречаются величины, которые не меняются в процессе выполнения программы (т.е. фактически они противоположность переменных). Такие величины называются константами. Константы указываются в специальном ...

Циклы и массивы

Многомерные массивы.

Индексы имеют еще одно свойство — чем больше объем массива, тем менее эффективна с ним работа, поэтому часто используют массивы массивов, то есть с двумя, тремя и более индексами для идентификации ...

Организация условного перехода. Оператор IF.

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

Для того чтобы облегчить доступ к компонентам записи очень часто используют оператор присоединения With .  . Do.

 Использование оператора With . . Do.


  1. program zapisi4;
  2. uses crt;
  3. type opisanie=record
  4. marka: string[45];
  5. color: string[8];
  6. god_vip: integer;
  7. probeg: real;
  8. end;
  9. var auto: opisanie;
  10. begin
  11. clrscr;
  12. with auto do
  13. begin
  14. writeln ('Введите описание автомобиля ');
  15. writeln ('Введите марку автомобиля');
  16. readln (marka);
  17. writeln ('Введите цвет автомобиля');
  18. readln (color);
  19. writeln ('Введите год выпуска автомобиля');
  20. readln(god_vip);
  21. writeln ('Введите пробег автомобиля');
  22. readln(auto.probeg);
  23. writeln ('Все данные введены');
  24. writeln ;
  25. writeln (' Марка автомобиля: ', marka);
  26. writeln(' Цвет автомобиля: ', color);
  27. writeln(' Год выпуска автомобиля: ', god_vip);
  28. writeln(' Пробег автомобиля : ', probeg:6:0);
  29. end;
  30. readln
  31. end.

Возьмем в качестве примера код первой программы и вставим в него оператор With. . Do (строка №12). Записываем служебное With, далее указываем имя переменной, которая связана с типом Запись, затем служебное слово Do. После этого все операторы (строка №14 - №28) заключаем в операторные скобки Begin..End. Теперь для доступа к компоненту записи нам не нужно указывать имя переменной и имя компонента, достаточно указать лишь имя компонента.

with do

with do.

Использование оператора присоединения With..Do зависит от предпочтения программиста. На выполнения самой программы он никак не влияет.


Предыдущая статья : Вложенные записи.

Оглавление : Уроки Паскаль. Записи.

Следующая статья : Использование массивов записей.


Комментарии  

 
0 # Дима 30.11.2014 10:03
Теперь для доступа к компоненту записи нам не нужно указывать имя переменной и имя компонента, достаточно указать лишь имя компонента.

В строке №22 Записано: readln(auto.probeg);

Нужно ведь записать в таком виде: readln(probeg);
Ответить
 

Добавить комментарий

   ГлавнаяПаскальЗаписи в ПаскальОператор присоединения With . . Do.