- •Зертханалық жұмыс
- •Блок-схема (блок-схема элементтері, блок типтері).
- •Тапсырмалар
- •X, y, z берілген. A және b есептеңіздер.
- •X, y, z берілген. A және b есептеңіздер.
- •Әдістемелік нұсқау.
- •Тармақталу командасы:
- •Логикалық есептермен Prolog программалық ортада жұмыс жасау. Жасанды интеллект үшін Prolog – та программа құру.
- •Логикалық амалдар. Логика, логикалық байланыстар және ақиқаттылық кестелер негіздері. Логикалық тұжырымдау принциптері. Логикалық амалдармен жұмыс істеу.
- •Visual Prolog программасы
- •Зертханалық жұмыс 3-1. Бір санау жүйесінен басқа санау жүйесіне ауыстыру.
- •Санау жүйелеріне амалдар қолдану.
- •Зертханалық жұмыс 4-2. Дербес компьютердің сыртқы және ішкі құрылғылары. Компьютер жадысының құрылғысы. Жады иерархиясы. Негізгі жадтың жəне операциялардың үйымдастырылуы. Виртуалды жады.
- •Дербес компьютердің негізгі құрылғылары:
- •Пернетақтасының құрылымы:
- •Бақылау сұрақтары:
- •Зертханалық жұмыс 5-1. Әр түрлі операциялық жүйемен жұмыс. Windows-ты баптау. Файлдық жүйелердің құрылымы.Обьектілермен жұмыстың түрлері. Программаны іске қосу. Windows ож.
- •Топтан шығару
- •Геометриялық элементтерді басқа орынға жылжыту
- •Геометриялық элементтерге әртүрлі масштаб қолдану
- •Зертханалық жұмыс 6 -1. Операциялық жүйенің стандартты қосымшалары. Қолданбалы программалар пакетіндегі қосымшалармен жұмыс.
- •Жаңадан құжат дайындау және сақтау
- •Құжатты жабу
- •Құжатты форматтау мүмкіндіктері
- •Кесте менюін пайдалану
- •2. Экранда Гиперсәлтемені кірістіру (Добавление гиперссылки) терезесі (2 сурет) пайда болады. Осы жерде сілтеме жасайтын объектіні, басқаша айтқанда қапшықты анықтап, ондағы файылды ерекшелеңіз.
- •Қалып өрістерінің түрімен үлгілерді құру. Құжаттарды біріктіру. Гипермәтіндік технология. Макростар.
- •4 Сурет. Запись макроса терезесі
- •Электрондық оқытуда KazNu сайтында univer жүйесімен жұмыс. Іздеу жүйелерінен ақпарат іздеу.
- •Электронды оқытуда қолданылатын коммуникациялық технологиялар. «e-Learning» ортасының негізгі компоненттері.
- •Зертханалық жұмыс 8-1. Си тілінде сызықты және тармақталған алгоритмдерді бағдарламалау.
- •Зертханалық жұмыс 8-2.
- •Тапсырма 4
- •Excel программасында кесте жасау, толтыру, редакциялау және пішімдеу (форматтау)
- •Кітапті құру. Беттермен жұмыс. Функцияларды және формулаларды қолдану. Кестелерді біріктіру.
- •Электерондық кестені деректер қоры ретінде пайдалану
- •Тапсырма 4
- •Excel программасында кесте жасау, толтыру, редакциялау және пішімдеу (форматтау)
- •Фукция шеберін қолдану. Кестелерді бірітіру. Диаграммаларды тұрғызу.
- •Фирма кірістерінің абсолюттік және проценттік қатынастағы көрсеткіштері
- •Мәндер жиынынан белгілі бір мәндерді таңдау
- •Тізімді сұрыптау. Жазбаларды автосүзбе өткізу.
- •Толық кестелер. Баспаға шығару
- •Жобалаушы. Есеп беру шебері. Автоесеп беру.
- •Кірістірілген және импорталған кестелер. Сұраныстармен жұмыс. Сұраныс бланкісі. Формалармен жұмыс.
- •Тапсырма 10.1
- •Зертханалық жұмыс 11-1 . Жергілікті желіде құжаттармен жұмыс істеу. Internet Explorer броузерді баптау және танысу.Кілттік сөздер бойынша ақпаратты іздеу. Іздеу технологиясын қолдану.
- •Жұмыстың орындалу реті
- •Жұмыстың орындалу реті
- •Зертханалық жұмыс 12-1. Html гипермәтіндік тілінің анықтамасы. Форматтар түрлері. Гиперсілтеме және фреймдерді құру. Кестелерді және формаларды құру. Браузер өрістерін баптау.
- •1. Төмендегi берiлген кесте бойынша программаны жаз және қандай тэгалар мен атрибуттар қолданғаныңды түсiндiр.
- •2. Төмендегi берiлген программа үзiндiсiн толықтырып жаз:
- •3. Төмендегi берiлген үлгi бойынша берiлген кестеге программа жаз және оның тақырыбын ортаға туралап қой.
- •Электронды адресті құру. Электрондық поштамен жұмыс.
- •Зертханалық жұмыс 13-1. Криптотүрлендіру: ауыстыру шифры. Біралфавитті әдіс. Цезарь шифры. Көпалфавитті шифр. Плейфейра шифры.
- •Есептерді шешу техноглогиясы. Мәліметтерді қорғаудың криптографиялық әдістері. Криптотүрлендіру: ауыстыру шифры.Біралфавитті әдіс. Цезарь шифры. Көпалфавитті шифр. Плейфейра шифры.
- •Пролог программалау тілі. Тілдің қысқаша анықтамаасы. Логикалық есептерді шешу.
- •Лабораториялық жұмыстың құрамы және оған әдістемелік түсініктеме
- •Зертханалық жұмыс 15-1 .Қазақстан Республикасының электрондық үкіметі.
- •Зертханалық жұмыс 15-2.
Пролог программалау тілі. Тілдің қысқаша анықтамаасы. Логикалық есептерді шешу.
Visual Prolog-ты орнату және жұмысты бастау
Мысалдарды көру үшін визуалды құрастыру ортасы Test Goal утилитасын пайдалану қажет. Бұл утилита Project|Test Goal командасы немесе <Ctrl>+<G> батырмалары комбинациясымен жүзеге асырылады. Визуалды құрастыру ортасы Test Goal утилитасымен мысалдарды нақты орындау үшін орындалатын жобалардың арнайы өңдеулерін қажет етеді. Әрқашанда арнайы Test Goal-жобасын құрып және оны қолдану ұсынылады.
Лабораториялық жұмыстың құрамы және оған әдістемелік түсініктеме
Visual Prolog-та жұмыс атқару
Пролог тілінің синтаксисі және программаның құрылымы
Мысалдар мен түсіндірмелер
Visual Prolog –та жұмыс атқару
Мысалдарды орындау үшін TestGoal-жобасын құру
Мысалдарды орындау үшін TestGoal утилитасын қолданғанда Visual Prolog компиляторының бірнеше (анықталмаған) опцияларын анықтау қажет. Бұл үшін мынаны орында:
Visual Prolog визуалды құрастыру ортасын қосыңыз.
VDE (визуалды құрастыру ортасы)-ны ең алғаш қосқан кезде жоба орындалмайды, сіз мына терезені көресіз:
2. Жаңа жоба құрыңыз.
Project|New Project командасын таңдаңыз, Application Expert сұқбат терезесін қосыңыз
3. Базалық каталогты және жоба атын анықтаңыз. Base Directory қатарына жоба атын төмендегідей беру ұсынылады:
C:\Program files\VIP52\DOC\Examples\TestGoal
Бұл анықтау дайын мысалдарды орындауға өте оңай. Project Name қатарында атты "TestGoal" деп берген дұрыс. Multiprogrammer Mode ұяшығына жалауша қойыңыз. Name of.PRJ File ішіне шертсеңіз TestGoal.prj жобасы файлының аты пайда болады.
Жобаның мақсатын анықтау.
Target – те суреттегідей етіп таңдау керек:
4. Құрылған TestGoal- жобасы үшін компилятордың қажетті опцияларын қойыңыз.
Compiler Options сұқбат терезесін ашу үшін Options|Project|Compiler Options командасын таңдаңыз. Warnings-ты таңдаңыз. Сосын:
Nondeterm-ге жалауша қойыңыз. Бұл Visual Prolog компиляторы бірнеше шешім шығара алатынын көрсетеді.
Non Quoted Symbols, Strong Type Conversion Check және Check Type of Predicates-тен жалаушаны алып тастаңыз. Бұл компилятордың сізге қажет емес ескертулерін көрсетпеуге қажет.
Таңдалған компилятордың опцияларын сақтау үшін ОК батырмасын шертіңіз.
Нәтиже мынандай түрде болады:
Редактор терезесін ашу.
Жаңа редактірлеу терезесін ашу үшін File| New командасын қолдансаңыз болады. Нәтижеде Noname атымен жаңа терезе пайда болады.
Визуалды құрастыру ортасының редакторі – стандартты тексттік редактор. Мұнда басқа тексттік редакторлары сияқты тінтуірді басқару батырмаларын және тышқанды қолданса болады. Edit мәзіріндегі Cut, Copy, Paste, Undo және Redo командаларымен жұмыс атқарады.
Программаны қосу және тестілеу.
Сіздің жүйеңіз дұрыс өңделгенін көру үшін терезеде мына тексті теріп көру керек:
GOAL
write("Hello world"),nl.
Пролог тілінің терминологиясында бұл GOAL деп аталады, және программа орындалуы үшін жеткілікті. GOAL – ды орындау үшін Project|Test Goal командасын орындау немесе <Ctrl>+<G> батырмасын шерту қажет. Егер сіздің жүйеңіз дұрыс өңделген болса, онда монитордың экраны мынандай түрде болады:
Программаның нәтижесі жоғарыдағы суретте көрсетілгендей бөлек терезеде орналасады, ол терезе Inactive C:\Program files\Vip52\BIN\WIN\32\Obj\goal$000.exe) деп аталады, басқа GOAL-ды тестілеуден алдын бұл терезені жабу қажет.
Мысалдарды тестілеу.
Мысалдарды мына каталогтан табуға болады: C:\Program files\VIP52\DOC\EXAMPLES.
Мысалдарды Test Goal-да тестілеу.
Test Goal утилитасын қолданып визуалды құрастыру ортасында мысалдардың бірін ашып, оны тестілеңіз. Оның үшін мына қадамдарды орындаңыз:
Visual Prolog визуалды құрастыру ортасын қосыңыз.
Арнайы TestGoal-жобасын ашу үшін мәзірдегі Project|Open Project командасын қолданыңыз.
chCCeNN.pro файлдарының бірін ашу үшін мәзірдегі File|Open командасын қолданыңыз.
Project|Test Goal немесе <Ctrl>+<G> батырмаларын басып мысалды тестілеңіз.
Test Goal барлық шығатын шешімдерді анықтап, Goal – да қолданылатын барлық айнымалылардың мәнін көрсетеді.
Test Goal утилитасының қасиеттеріне комментарийлар
Визуалды құрастыру ортасы Goal – ды арнайы программа ретінде интерпретациялайды, және ол өз кезегінде компиляцияланады, компонирленеді, орындалып жатқан файлға генеризацияланады және Test Goal оны орындауға жібереді. Бұл утилита генеризацияланған программа барлық мүмкін шешімдерді табуға және қолданылған айнымалылардың мәнін көрсету үшін Goal кодын іштей кеңейтеді. Test Goal утилитасы бұл кодты компилятордың опцияларын қолданып компиляциялайды.
Қателерді өңдеу.
Егер сіз программада қателік жіберіп, оны орындауға жіберсеңіз, визуалды құрастыру ортасы Errors (Warnings) терезесінде қателер тізімін шығарады.
Қате үстінен екі рет шертсеңіз, тексттегі қате орынды көрсетеді. Visual Prolog – тың интерактивті анықтамалық жүйесін <F1> батырмасы көмегімен экранға шығаруға болады. Көмек терезесі ашылғанда Search батырмасын басыңыз, сосын қате кодын теріңіз, экранда қате туралы толық ақпарат шығады.
Пролог тілінің синтаксисі және программаның құрылымы
Прологта программа мынандай құрылымға ие:
domains
/*…
домендерді жариялау
…*/
predicates
/*…
предикаттарды жариялау
…*/
goal
/*…
өрнек1, өрнек2, т.б.
…*/
clauses
/*…
факттар мен ережелер
…*/
Clauses секциясында программаның мақсатын шешетін, пролог жұмыс атқаратын факттар мен ережелер орналасады.
Predicates секциясында предикаттар және предикаттар аргументтерінің типтері (домендер) жарияланады. Предикаттар аттары әріптерден (кіші әріп) басталып, әріптер, сандар, символдар (250 символ) тізбегімен аяқталуы тиіс. Предикат аттарында -, *, /, \, |, пробел қолдануға болмайды. Предикатты жариялау мына түрде болады:
predicates
predicateName(argument_type1, argument_type2, … , argument_typeN)
Мұндағы argument_type1, ..., argument_typeN – не стандартты домендер, не domains секциясында жарияланған домендер. Домен аргументін жариялау мен аргумент типін сипаттау екеуі бір нәрсе.
Прологтың стандартты домендер типі.
Домен (аймақ) объектіге тиісті көптеген мүмкін болған мәндерді анықтайды. Прологта 6 домендер типі анықталған. Пролог предикат аргументінің мәнін белгілеу үшін домендер типтерінің аттарын қолданушының өзіне енгізуге мүмкіндік берген.
берілгендер типі |
Кілттік сөз |
мысал |
символдар |
char |
'a','?','ю' |
бүтін сандар |
integer |
88, -120 |
нақты сандар |
real |
0.25, -3.14 |
қатарлар |
string |
"robot","144" |
символдық аттар |
symbol |
mary,a,b,c,"Mary" |
файлдар |
file |
army.txt |
Мысал:
domains
title, author = symbol
year = integer
predicates
book(title, author, year).
Немесе:
predicates
book( symbol, symbol ,integer).
Domains секциясында предикаттар аргументтері үшін қолданылатын кез-келген стандартты емес домендерді жариялаймыз. Прологта домендер басқа тілдер типтерінің аналогы болып табылады. Прологтың негізгі стандартты домендері: char, integer, real, string и symbol. Домендерді жариялаудың негізгі формасы келесі түрде болады:
domains
argument_type1, …, argument_typeN=< стандартты домен>
argument_1, …, argument_N=< құрамды домен 1>;<…>;=< құрамды домен N>
goal секциясында программаның ішкі мақсаты беріледі, бұл программаға құрастыру ортасынан тәуелсіз орындалуға мүмкіндік береді. Егер программаға ішкі мақсат берілген болса, онда пролог бірінші шешімді іздейді, және де айнымалылардың байланысты мәндері экранға шығарылмайды. Егер ішкі мақсат жоқ болса, онда жұмыс процесінде сұқбат терезесіне сыртқы мақсат шығарылады. Сыртқы мақсатты қолданғанда пролог барлық шешімдерді іздейді және айнымалылардың байланысты барлық мәндерін экранға шығарады.
Прологқа 200-ге жақын стандартты предикаттар және 12-ге жақын стандартты домендер енгізілген. Бұл предикаттарды және домендерді қолданған кезде, оларды жариялау қажет емес.
Предикаттың өлшемі(арность) – бұл оның қабылдайтын аргументтер саны. Екі бірдей атты предикат әртүрлі өлшемде болуы мүмкін. Әртүрлі өлшемді предикаттар predicates және clauses секцияларында бірге жиналуы тиіс. Бірақ олар әртүрлі деп қарастырылады.
Ережелер мынандай формада болады:
Тақырыпша:- <Өрнек1>,<Өрнек2>, ..., <ӨрнекN>
Ережеге рұқсат беру үшін пролог оның барлық өрнектеріне рұқсат беру қажет. Егер бір өрнек жалған болса, пролог артқа қайтады да алдынғы өрнектердің альтернативті шешімдерін қарастырады, сосын және алға жылжиды, бірақ басқа айнымалылар мәндерімен. Бұл процесс «қайтарыммен іздеу» ("поиск с возвратом") деп аталады.
Мысалдар:
Теннис клубы ойыншыларының аттары мен жасын көрсететін CH05EX03.PRO мысалын қарастырайық.
/* Program CH02E01.PRO */
predicates
likes(symbol,symbol)
clauses
likes(ellen,tennis).
likes(john,football).
likes(tom,baseball).
likes(eric,swimming).
likes(mark,tennis).
likes(bill,Activity):-
likes(tom, Activity).
goal
likes(bill,baseball).
1-мысалды қарастырайық. Жасы 9-дағы ойыншылар жұбын мына құрамды мақсатты беру жолымен амалға асырайық:
player(Person1,9), player(Person2,9), Person1 <> Person2.
Қарапайым тілде бұл былай болады: 9 жасар Тұлға1-ді және Тұлға1-ден өзге 9 жасар Тұлға2-ні табу.
Пролог player(Person1,9)-ді іздестіреді, сосын келесі өрнекке өтеді, егер де бірінші өрнек табылса. Бірінші өрнек Person1 peter-мен байланысты. Енді пролог екінші player(Person2,9) өрнегін іздейді. player(Person2,9) да peter-мен байланысты, онда пролог үшінші соңғы өрнекті іздейді:
Person1 <> Person2
2. Person1 және Person2 peter - мен байланысты болғандықтан, бұл өрнек орындалмайды. Пролог player(Person2,9) үшін қайтарымды іздеу жасайды. Бұл player(Person2,9)-ні chris-пен байланыстырғанда орындалады.
3. Енді үшінші өрнек
Person1 <> Person2
peter және chris екеуі екі бөлек болғандықтан орныдалады.
4. Бірақ, пролог барлық мүмкін болған шешімдерді табатындаықтан, ол алдынғы мақсаттың қайтарыммен іздеу нүктесін табады.
Егер player(Person2,9)-ге susan-ды байланыстырсақ, онда пролог үшінші өрнекті қайта тексереді. peter susan-нан ерекше болғандықтан келесі шешімде табылады.
5. Сосын пролог қайтадан екінщі өрнек үшін қайтарыммен іздеу нүктесіне барады, бірақ бұл өрнек үшін мүмкіндіктер таусылғандықтан, іздеу бірінші өрнектен басталады. Person1 chris-пен байланысты, ал Person2 peter-мен, онда үшінші өрнек те байланысты, шешім тағы да табылды.
6. Сосын Крис пен Крис сәйкес болғандықтан, Крис пен Сюзанды қарастырады. Үшінші өрнек орындалады.
7. Енді Person1-ді susan-мен байланыстырып, оны Person2 peter-мен сәйкестендіреді. Осылайша бесінші шешім табылады.
8. Дәл осылай Person1-ді susan Person2 chris-ті сәйккестендіреді, сосын Person3 peter-мен, алтыншы шешім табылды.
9. Person1-ді susan, Person2 susan деп алады. Бұл өрнек орындалмағандықтан ол екінші өрнекке қайтады. Ол жерде басқа варианттар қалмағандықтан 1-өрнекке барады, ол жерде де вариант қалмағандықтан программа жұмысын тоқтатады.
Осылай СН05ЕХ03 программасы құрамды мақсат:
player(Person1,9), player(Person2,9), Person1 <> Person2 енгізілген соң, пролог мынандай жауап қайтарады:
Person1=peter, Person2=chris
Person1=peter, Person2=susan
Person1=chris, Person2=peter
Person1=chris, Person2=susan
Person1=susan, Person2=peter
Person1=susan, Person2=chris
6 Solutions
