МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Разработка информационно-справочной системы

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    %%%

    see('1') :-

    makewindow(5,95,1," Просмотр bd ",7,10,9,60),

    framewindow(94), nl,

    characteristick(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    show(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    nl,nl,write("Нажмите ENTER для продолжения..."),

    readchar(_), nl, fail.

    see('1') :-

    removewindow, removewindow, do('3'), !.

    see('2') :-

    makewindow(5,95,1," Просмотр b1 ",7,10,9,60),

    framewindow(94), nl,

    table1(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    show(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    nl,nl,write("Нажмите ENTER для продолжения..."),

    readchar(_), nl, fail.

    see('2') :-

    removewindow, removewindow, do('3'), !.

    see('3') :-

    makewindow(5,95,1," Просмотр b2 ",7,10,9,60),

    framewindow(94), nl,

    table2(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    show(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    nl,nl,write("Нажмите ENTER для продолжения..."),

    readchar(_), nl, fail.

    see('3') :-

    removewindow, removewindow, do('3'), !.

    see('4') :-

    !.

    see(_) :-

    makewindow(5,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Выберите из меню"), readchar(_),

    removewindow, removewindow, do('3').

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    %%%

    correct('1') :-

    makewindow(5,95,1," Корректировка записи, найденной по артикулу

    ",7,10,13,60),

    framewindow(94),

    write("Номер артикула: "), readint(X),

    characteristick(X,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    nl, write("Старая запись:"), nl, nl,

    show(X,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)), nl, nl,

    write("Введите новый вариант:"), nl, nl,

    get(ArtD,place(NCD,NSD),NameD,price(RubD,KopD),date(YearD,MonD,DayD)), nl,

    clearwindow,

    retract(characteristick(X,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day

    ))),

    assert(characteristick(ArtD,place(NCD,NSD),NameD,price(RubD,KopD),date(YearD

    ,MonD,DayD))),

    removewindow, removewindow, do('4'), !.

    correct('1') :-

    removewindow, removewindow, do('4'), !.

    correct('2') :-

    makewindow(5,95,1," Корректировка записи, найденной по названию

    ",7,10,13,60),

    framewindow(94),

    write("Название: "), readln(X),

    characteristick(Art,place(NC,NS),X,price(Rub,Kop),date(Year,Mon,Day)),

    nl, write("Старая запись:"), nl, nl,

    show(Art,place(NC,NS),X,price(Rub,Kop),date(Year,Mon,Day)), nl, nl,

    write("Введите новый вариант:"), nl, nl,

    get(ArtD,place(NCD,NSD),NameD,price(RubD,KopD),date(YearD,MonD,DayD)), nl,

    clearwindow,

    retract(characteristick(Art,place(NC,NS),X,price(Rub,Kop),date(Year,Mon,Day)

    )),

    assert(characteristick(ArtD,place(NCD,NSD),NameD,price(RubD,KopD),date(YearD

    ,MonD,DayD))),

    removewindow, removewindow, do('4'), !.

    correct('2') :-

    removewindow, removewindow, do('4'), !.

    correct('3') :-

    !.

    correct(_) :-

    makewindow(5,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Выберите из меню"), readchar(_),

    removewindow, removewindow, do('4').

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    %%%

    del('1') :-

    makewindow(5,95,1," Удаление по артикулу ",7,20,10,40),

    framewindow(94),

    write(" Номер артикула: "), readint(X),

    retract(characteristick(X,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day

    ))), nl,

    write(" Готово."), readchar(_),

    removewindow,removewindow, do('5'), !.

    del('1') :-

    makewindow(6,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Запись не найдена."), readchar(_),

    removewindow, removewindow, removewindow, do('5').

    del('2') :-

    makewindow(5,95,1," Удаление по названию ",7,20,10,40),

    framewindow(94),

    write(" Название: "), readln(X),

    retract(characteristick(Art,place(NC,NS),X,price(Rub,Kop),date(Year,Mon,Day)

    )), nl,

    write(" Готово."), readchar(_),

    removewindow,removewindow, do('5'), !.

    del('2') :-

    makewindow(6,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Запись не найдена."), readchar(_),

    removewindow, removewindow, removewindow, do('5').

    del('3') :-

    makewindow(5,95,1," Удаление всей базы ",7,20,10,40),

    framewindow(94),

    retract(characteristick(_,place(_,_),_,price(_,_),date(_,_,_))),

    fail.

    del('3') :-

    write(" База удалена."), readchar(_),

    removewindow,removewindow, do('5'), !.

    del('4') :-

    !.

    del('_') :-

    makewindow(5,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Выберите из меню"), readchar(_),

    removewindow, removewindow, do('5').

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    %%%

    indication('1') :-

    makewindow(5,18,1," Создать базу B1 по признаку ",8,25,10,30),

    framewindow(19),

    write(" Введите признак:"), nl,

    nl, write(" 1 :- По месту хранения"),

    nl, write(" 2 :- По цене"),

    nl, write(" 3 :- По дате поступления"),

    nl, write(" 4 :- Меню"), nl,

    nl, write(" ------| |------"),

    cursor(7,13), readchar(X), indicationB1(X),

    removewindow, removewindow, do('6'), !.

    indication('2') :-

    makewindow(5,18,1," Создать базу B2 по признаку ",8,25,10,30),

    framewindow(19),

    write(" Введите признак:"), nl,

    nl, write(" 1 :- По месту хранения"),

    nl, write(" 2 :- По цене"),

    nl, write(" 3 :- По дате поступления"),

    nl, write(" 4 :- Меню"), nl,

    nl, write(" ------| |------"),

    cursor(7,13), readchar(X), indicationB2(X),

    removewindow, removewindow, do('6'), !.

    indication('3') :-

    !.

    indication(_) :-

    makewindow(5,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Выберите из меню"), readchar(_),

    removewindow, removewindow, do('6').

    indicationB1('1') :-

    makewindow(6,95,1," Создание базы B1 по месту хранения ",7,20,10,40),

    framewindow(94), nl,

    write(" Номер цеха: "), readint(X),

    write(" Номер склада: "), readint(Y),

    characteristick(Art,place(X,Y),Name,price(Rub,Kop),date(Year,Mon,Day)),

    assert(table1(Art,place(X,Y),Name,price(Rub,Kop),date(Year,Mon,Day))),

    fail.

    indicationB1('1') :-

    removewindow, removewindow, indication('1').

    indicationB1('2') :-

    makewindow(6,95,1," Создание базы B1 по цене ",7,20,10,40),

    framewindow(94), nl,

    write(" Рублей: "), readint(X),

    write(" Копеек: "), readint(Y),

    characteristick(Art,place(NC,NS),Name,price(X,Y),date(Year,Mon,Day)),

    assert(table1(Art,place(NC,NS),Name,price(X,Y),date(Year,Mon,Day))),

    fail.

    indicationB1('2') :-

    removewindow, removewindow, indication('1').

    indicationB1('3') :-

    makewindow(6,95,1," Создание базы B1 по дате поступления

    ",7,20,10,40),

    framewindow(94), nl,

    write(" Год: "), readint(X),

    write(" Месяц: "), readint(Y),

    write(" День: "), readint(Z),

    characteristick(Art,place(NC,NS),Name,price(Rub,Kop),date(X,Y,Z)),

    assert(table1(Art,place(NC,NS),Name,price(Rub,Kop),date(X,Y,Z))),

    fail.

    indicationB1('3') :-

    removewindow, removewindow, indication('1').

    indicationB1('4') :-

    !.

    indicationB1(_) :-

    makewindow(6,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Выберите из меню"), readchar(_),

    removewindow, removewindow, indication('1').

    indicationB2('1') :-

    makewindow(6,95,1," Создание базы B2 по месту хранения ",7,20,10,40),

    framewindow(94), nl,

    write(" Номер цеха: "), readint(X),

    write(" Номер склада: "), readint(Y),

    characteristick(Art,place(X,Y),Name,price(Rub,Kop),date(Year,Mon,Day)),

    assert(table2(Art,place(X,Y),Name,price(Rub,Kop),date(Year,Mon,Day))),

    fail.

    indicationB2('1') :-

    removewindow, removewindow, indication('2').

    indicationB2('2') :-

    makewindow(6,95,1," Создание базы B2 по цене ",7,20,10,40),

    framewindow(94), nl,

    write(" Рублей: "), readint(X),

    write(" Копеек: "), readint(Y),

    characteristick(Art,place(NC,NS),Name,price(X,Y),date(Year,Mon,Day)),

    assert(table2(Art,place(NC,NS),Name,price(X,Y),date(Year,Mon,Day))),

    fail.

    indicationB2('2') :-

    removewindow, removewindow, indication('2').

    indicationB2('3') :-

    makewindow(6,95,1," Создание базы B2 по дате поступления

    ",7,20,10,40),

    framewindow(94), nl,

    write(" Год: "), readint(X),

    write(" Месяц: "), readint(Y),

    write(" День: "), readint(Z),

    characteristick(Art,place(NC,NS),Name,price(Rub,Kop),date(X,Y,Z)),

    assert(table2(Art,place(NC,NS),Name,price(Rub,Kop),date(X,Y,Z))),

    fail.

    indicationB2('3') :-

    removewindow, removewindow, indication('2').

    indicationB2('4') :-

    !.

    indicationB2(_) :-

    makewindow(6,76,1,"Ошибка",8,29,5,22),

    framewindow(75), nl,

    write(" Выберите из меню"), readchar(_),

    removewindow, removewindow, indication('2').

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    %%%

    adding :-

    get(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    nl, write(" Вы ввели :"),

    nl, show(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)),

    nl,

    nl, write(" Добавить ? (Yes/No)"), readchar(A),

    A='y',

    assert(characteristick(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Da

    y)));

    !.

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    %%%

    exists(FN) :-

    existfile(FN);

    makewindow(6,76,1,"Ошибка",10,25,5,30), nl,

    framewindow(75),

    write(" Файл ",FN," не найден!"),

    readchar(_), removewindow,

    removewindow, removewindow, do('1').

    show(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)) :-

    write(" Артикул : ",Art),

    nl, write(" Местоположение (Цех, Склад) : ",NC,", ",NS),

    nl, write(" Наименование товара : ",Name),

    nl, write(" Стоимость (Рублей:Копеек) : ",Rub,":",Kop),

    nl, write(" Дата поступления (Год-Месяц-День) : ",Year,"-",Mon,"-

    ",Day).

    get(Art,place(NC,NS),Name,price(Rub,Kop),date(Year,Mon,Day)) :-

    write(" Артикул : "), readint(Art),

    write(" Местоположение : "), nl,

    write(" Цех : "), readint(NC),

    write(" Склад : "), readint(NS),

    write(" Наименование товара : "), readln(Name),

    write(" Стоимость : "), nl,

    write(" Рублей : "), readint(Rub),

    write(" Копеек : "), readint(Kop),

    write(" Дата поступления : "), nl,

    write(" Год : "), readint(Year),

    write(" Месяц : "), readint(Mon),

    write(" День : "), readint(Day).

    7. Отладка программы.

    Открытие БД.

    +-------------- Системное меню --------------+

    ¦ Выберите вариант работы с базами данных: ¦

    ¦ 1 :-+--------- Загрузить --------+ ¦

    ¦ 2 :-¦ Куда загрузить ? ¦ ¦

    ¦ +--------------Загрузка bd-------------+ ¦

    ¦ ¦ ¦ ¦

    ¦ ¦ Имя файла : data ¦ ¦

    ¦ ¦ ¦ ¦

    ¦ ¦ Загружено ¦ ¦

    +--¦ ¦--+

    +--------------------------------------+

    Сохранение БД.

    +-------------- Системное меню --------------+

    ¦ Выберите вариант работы с базами данных: ¦

    ¦ ¦

    ¦ 1 :-+--------- Сохранить --------+ ¦

    ¦ 2 :-¦ Что сохранить ? ¦ ¦

    ¦ +-------------Сохранение b2------------+ ¦

    ¦ ¦ ¦ ¦

    ¦ ¦ Имя файла : data2 ¦ ¦

    ¦ ¦ ¦ ¦

    ¦ ¦ Сохранено ¦ ¦

    +--¦ ¦--+

    +--------------------------------------+

    Просмотр.

    +-------------- Системное меню --------------+

    ¦ Выберите вариант работы с базами данных: ¦

    ¦ ¦

    ¦ 1 :-+-------- Просмотреть -------+ ¦

    ¦ 2 :-¦ Что просмотреть ? ¦ ¦

    +----------------------- Просмотр bd ----------------------+

    ¦ Артикул : 2 ¦

    ¦ Местоположение (Цех, Склад) : 6, 7 ¦

    ¦ Наименование товара : Vint ¦

    ¦ Стоимость (Рублей:Копеек) : 0:65 ¦

    ¦ Дата поступления (Год-Месяц-День) : 1996-2-45 ¦

    ¦ ¦

    ¦Нажмите ENTER для продолжения... ¦

    +----------------------------------------------------------+

    Корректировка.

    +-------------- Системное меню --------------+

    ¦ Выберите вариант работы с базами данных: ¦

    ¦ ¦

    ¦ 1 :-+------- Корректировка ------+ ¦

    ¦ 2 :-¦ Способ нахождения записи: ¦ ¦

    +------- Корректировка записи, найденной по названию ------+

    ¦Старая запись: ¦

    ¦ ¦

    ¦ Артикул : 1 ¦

    ¦ Местоположение (Цех, Склад) : 5, 6 ¦

    ¦ Наименование товара : Gayka ¦

    ¦ Стоимость (Рублей:Копеек) : 0:45 ¦

    ¦ Дата поступления (Год-Месяц-День) : 1996-1-4 ¦

    ¦ ¦

    ¦Введите новый вариант: ¦

    ¦ ¦

    ¦ Артикул : ¦

    +----------------------------------------------------------+

    Удаление.

    +-------------- Системное меню --------------+

    ¦ Выберите вариант работы с базами данных: ¦

    ¦ ¦

    ¦ 1 :-+ Удаление записи по признаку+ ¦

    ¦ 2 :-¦ Введите признак: ¦ ¦

    ¦ +-------- Удаление по артикулу --------+ ¦

    ¦ ¦ Номер артикула: 1 ¦ ¦

    ¦ ¦ ¦ ¦

    ¦ ¦ Готово. ¦ ¦

    +--¦ ¦--+

    +--------------------------------------+

    Создание по признакам.

    +-------------- Системное меню --------------+

    ¦ Выберите вариант работы с базами данных: ¦

    ¦ ¦

    ¦ 1 :-+- Создать базу по признаку -+ ¦

    ¦ 2 :-¦ Какую базу создать ? ¦ ¦

    ¦ +------ Создание базы B1 по цене ------+ ¦

    ¦ ¦ ¦ ¦

    ¦ ¦ Рублей: 0 ¦ ¦

    ¦ ¦ Копеек: 45 ¦ ¦

    +--¦ ¦--+

    +--------------------------------------+

    +----------------------------+

    Добавление.

    +-------------- Системное меню --------------+

    ¦ Выберите вариант работы с базами данных: ¦

    ¦ ¦

    ¦ 1 :- Загрузить ¦

    ¦ 2 :- Сохранить ¦

    +------------- Добавить запись к главной базе -------------+

    ¦ Местоположение : ¦

    ¦ Цех : 5 ¦

    ¦ Склад : 6 ¦

    ¦ Наименование товара : Shayba ¦

    ¦ Стоимость : ¦

    ¦ Рублей : 1 ¦

    ¦ Копеек : 2 ¦

    ¦ Дата поступления : ¦

    ¦ Год : 1996 ¦

    ¦ Месяц : 23 ¦

    ¦ День : 3 ¦

    +----------------------------------------------------------+

    8. Инструкция пользователя и решение контрольных примеров.

    Решение контрольных примеров основывается на том, что было сделано в

    отладке программы и может быть изучено по вышестоящей части (7.).

    Для работы с программой необходимо выбирать из предлагаемых меню пункты

    путем нажатия на соответствующие цифры. При появлении подменю повторить

    операцию, при запросе на имя файла - ввести строку, определяющую имя

    файла, при запросе на символ, нажать соответствующую клавишу на

    клавиатуре (не забывайте, пожалуйста об языковой раскладке клавиатуры и

    состоянии клавиши CAPSLOCK). Также в нескольких процедурах производится

    подтверждение (Yes/No - Да/Нет) - необходимо переключиться на английскую

    раскладку и нажать соответствующую клавишу в нижнем регистре.

    9. Заключение.

    Язык программирования Пролог безусловно может быть использован для

    написания подобных информационно-справочных систем, так как он позволяет

    легко и быстро создавать логические запросы к базам данных, что

    безусловно выделяет его среди остальных языков программирования.

    10. Список литературы.

    1. К. Кларк. “Введение в логическое программирование на Micro Prologe”.

    2. К. Хоггер. “Введение в логическое программирование”.

    Страницы: 1, 2


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.