Студопедия — Case поле_признака : имя_типа of
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Case поле_признака : имя_типа of

(заочная форма обучения)

Приложение 2

№ п/п Наименование темы Всего часов Аудиторные занятия (лекции) Самостоятельная работа студентов
  Предмет, цели, задачи и история психогенетики      
  Методы психогенетических исследований и их разрешающая способность      
  Основные понятия теории наследственности      
  Психогенетические исследования интеллекта и других когнитивных функций      
  Особенности психологического фенотипа как объекта генетического исследования      
  Возрастная динамика генотип-средовых соотношений как основа для возрастной периодизации      
7* Роль наследственности в манифестации некоторых форм дизонтогенеза      
  Влияние генотипа и среды на формирование асоциального поведения      
  Итого:      

 

Записи с фиксированными частями

Формат описания:

1-ый способ:

Type

имя _ типа_записи = Record

список_имен _ полей_1: тип_1;

список_имен _ полей_2: тип_2;

...

список_имен _ полей_N: тип_N

end;

Var

имя_перем_записи: имя _ типа_записи;

2-ой способ:

Var

имя_перем_записи: Record

список_имен _ полей_1: тип_1;

список_имен _ полей_2: тип_2;

...

список_имен _ полей_N: тип_N

end;

Пример 8.1 (описания записей):

1) определение комплексных чисел:

Type

Complex = Record

Re, Im:Real

end;

Var

X, Y: Complex;

2) определение даты:

Type

Date = Record

Day: 1.. 31;

Month: (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sept, Oct, Nov, Dec);

Year:Integer

end;

Var

D1, D2: Date;

Доступ к полям записи осуществляется путем указания идентификатора переменной-записи и идентификатора поля, разделенныхточкой (такая комбинация называется составным именем), например:

X. Re:= 10. 5;

X. Im:= 5. 3;

D1. Day:= 2 8;

D1. Mont:= Oct;

D1. Year:= 2009;

Read (X. Re);

Write ( a + i*b = , X. Re, ‘ + i * , X. Im);

Все действия производятся над полями записи, только операцию присваивания можно выполнить над всей записью:

D1:= D2;

Разрешается использовать тип запись при описании других типов данных: массив записей, запись записей и т.д.

Type

Family = (Father, Mother, Son, Daudhter);

Day = 1.. 31;

Month = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sept, Oct, Nov, Dec);

Year = 1900.. 2010;

Date = Record

D: Day;

M: Month;

Y: Year

end;

T_Fio = Record

Fam:String [ 20 ];

Name:String [ 15 ];

Otch:String [ 15 ]

end;

T_Ank = Record

Fio: T_Fio;

Dat: Date;

Adr:String

end;

List = Array [ Family ] of T_Ank;

Var

Ank_Fam: List;

...

WriteLn ( Введи FIO отца );

Write ( Фамилия: );

ReadLn (Ank_Fam [ Father ]. Fio. Fam);

Write ( Имя: );

ReadLn (Ank_Fam [ Father ]. Fio. Name);

Write ( Отчество: );

ReadLn (Ank_Fam [ Father ]. Fio. Otch);

...

Оператор With

Для более простого обращения к отдельным полям записей (как если бы это были простые переменные) используется оператор присоединения With:

Формат оператора:

With список_переменных_типа_запись do оператор;

Внутри оператор’а поле записи опознается только по имени поля без указания имени записи:

With X, D1 do

Begin

Re:= 10.5;

Im:= 5.3;

Day:= 2 8;

Mont:= Oct;

Year:= 2009

End;

Сравните с примером в начале пункта (без использования оператора With). Понятно, что в операторе With нельзя указывать имена нескольких записей одного и того же типа.

Поскольку Паскаль допускает вложение записей друг в друга (см., пример выше), то оператор With тоже может быть вложенным (уровень вложения не должен превышать 9):

Withсписок_переменных_1 do

With список_переменных_2 do

...

With список_переменных_N do оператор;

Последнее можно записать более коротко:

Withсписок_переменных_1, список_переменных_2,..., список_переменных_N do

оператор;

Записи с фиксированными частями можно описывать с помощью типизованных констант:

Const

имя_типиз_конст: тип = (список_значений_полей);

Список значений полей представляет собой список отделяемых друг от друга точкой с запятой элементов вида:

имя_поля: константа


Пример:

Type

Point = Record

x, y:Real

end;

Vector = Array [ 0.. 1 ] of Point;

Date = Record

Day: 1.. 31;

Month: (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sept, Oct, Nov, Dec);

Year: 1900.. 2010

end;

Const

Origon: Point = (x: 1.1; y: -1.2);

Line: Vector = ((x: -4.1; y: 6.5),

(x: 5.3; y: 3.6));

SomeDay: Date = (Day: 2 8; Month: Oct; Year: 2009);

Записи с вариантами

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

Записи с вариантами состоят из необязательной фиксированной и вариантной части. Использование фиксированной части не отличается от использования, описанного выше.

Вариантная часть формируется с помощью конструкции, аналогичной оператору case. Она задает особое поле записиполе признака, которое определяет, какой из вариантов в данный момент будет активизирован. Значением признака в каждый текущий момент выполнения программы должна быть одна из расположенных далее констант. Константа, служащая признаком, задает вариант записи и называется константой выбора.

Формат описания:

Type

имя _ типа = Record

 

{ фиксированная часть (может отсутствовать): }

 

список_имен _ полей_1: тип_1;

...

список_имен _ полей_N: тип_N

 

{ вариантная часть: }

Case поле_признака: имя_типа of

константа_выбора_1:(вариант_списка_имен _ полей_и_типов_1);

...

константа_выбора_M:(вариант_списка_имен _ полей_и_типов_M)

end;

Пример:

Type

Tovar = Record

 

{ фиксированная часть: }

 

Nomer: Byte;

A rticle: String

 

{ вариантная часть: }

 




<== предыдущая лекция | следующая лекция ==>
Тема 8. Влияние генотипа и среды на формирование асоциального поведения. | Актуальность. Person1 :Forma=( Country : ’Норвегия’ ;

Дата добавления: 2015-09-15; просмотров: 338. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

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

Анализ микросреды предприятия Анализ микросреды направлен на анализ состояния тех со­ставляющих внешней среды, с которыми предприятие нахо­дится в непосредственном взаимодействии...

Типы конфликтных личностей (Дж. Скотт) Дж. Г. Скотт опирается на типологию Р. М. Брансом, но дополняет её. Они убеждены в своей абсолютной правоте и хотят, чтобы...

Гносеологический оптимизм, скептицизм, агностицизм.разновидности агностицизма Позицию Агностицизм защищает и критический реализм. Один из главных представителей этого направления...

Studopedia.info - Студопедия - 2014-2024 год . (0.014 сек.) русская версия | украинская версия