Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
123321.doc
Скачиваний:
23
Добавлен:
16.09.2019
Размер:
227.33 Кб
Скачать

3.2 Процедура выбора занятия

В(10) : массив

с(10) : массив

а(66;11) : таблица

выбор_занятия=proc(a,в,c) returns(a;в;c)

пока (пользователь не выбрал) делать

если (пользователь не выбрал)

то

если атрибут(а;11)=0

то

вызов(а)

иначе

переход(а)

конец если

иначе

для i=1 по 10

в(i)=атрибут(а;i)

конец цикла

замена_элемента(а;11;1)

если атрибут(а;5)="лекция"

то

пока (ненайдена пара) делать

вызов(а)

для i=6 по 10

если атрибут (а;i)=в(i)

то

L=L+1

иначе

переход(а)

L=0

конец если

конец цикла

если (L=5)и(атрибут(а;1)<>в(1))

то

замена_элемента(а;11;1)

для i=1 по 10

с(i)=атрибут(а;i)

иначе

переход(а)

конец если

конец цикла

иначе

для i=1 по 10

с(i)=“ ”

конец если

конец если

конец цикла

3.3 Процедура проверки занятости группы

а(66;11) : таблица

D(3) //здесь хранятся временные значения день1 , пара1 , признак1

g : data type

проверка_занятости_группы=proc(a;g;D) returns(z:bool;a)

z=false

для i=1 по 66

если g=атрибут(а;1)

то

если D(1)=атрибут(а;8)

то

если D(2)=атрибут(а;9)

то

если D(3)=атрибут(а;10)

то

z=true

замена_элемента(а;11;2)

иначе

переход(а)

конец если

иначе

переход(а)

конец если

иначе

переход(а)

конец если

иначе

переход(а)

конец если

конец цикла

3.4 Процедура проверки занятости преподавателя

а(66;11) : таблица

D(3) : массив

g : data type

проверка_занятости_преподавателя=proc(а;g;D;z) returns(z:bool;a)

для i=1 по 66

если g=атрибут(а;6)

то

если D(1)=атрибут(а;8)

то

если D(2)=атрибут(а;9)

то

если D(3)=атрибут(а;10)

то

z=true

замена_элемента(a;11;2)

иначе

переход(а)

конец если

иначе

переход(а)

конец если

иначе

переход(а)

конец если

иначе

переход(а)

конец если

конец цикла

3.5 Процедура проверки занятости аудитории

а(66;11) : таблица

D(3) : массив

g : data type

проверка_занятости_аудитори(a;g;b;z) returns(z:bool; a)

для i=1 по 66

если g=атрибут(а;7)

то

если D(1)=атрибут(а;8)

то

если D(2)=атрибут(а;9)

то

если D(3)=атрибут(а;10)

то

z=true

замена_элемента(а;11;2)

иначе

переход(а)

конец если

иначе

переход(а)

конец если

иначе

переход(а)

конец если

иначе

переход(а)

конец если

конец цикла

3.6 Процедура замены значений

а(66;11) : таблица

В(10) : массив

D(3) : массив

замена_значений=proc(a;B;D) returns(a)

t=false

пока t=false делать

вызов(а)

р=0

для i=1 по 10

если В(i)=атрибут(а;i)

то

p=p+1

конец если

конец цикла

если р=10

то

для i=8 по 10

атрибут(а;i)=D(i-7)

конец цикла

атрибут(а;11)=3

p=true

иначе

переход(а)

конец если

конец цикла

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]