Тиімді алгоритмдерді өңдеу тәсілінің ерекшеліктері

Автор работы: Пользователь скрыл имя, 26 Октября 2013 в 17:20, реферат

Краткое описание

Тиімді алгоритмді белгілі бір дәрежеде жасампаздық, ойлап – тапқыштық процесс болып табылады. Сонымен бірге өнертапқыштық стандартты емес және дәстүрлі емес ыңғаймен есептерді шешуді талап етеді.Көптеген жағдайларда қанағаттанатын нәтижені тез ала алмаймыз, сондықтан, тиімді алгоритмді құруда жасау және қатені түзету әдісіне келтіріледі және нәтиженің соңғы вариантын алу үшін талдау және нақтылау бағытында бірнеше қадамдар жасау талап етіледі.
Мақсаты тиімді алгоритмдерді айтылған ережелерге келтіріп, ретімен, орналасу тәртібімен, берілген есептін мәніне қарай шарт қойып, есептін дұрыс жолын, шешімін, нәтижесін табу.

Содержание

КІРІСПЕ.........................................................................................................3 І.АЛГОРИТМНІҢ ҚҰРЫЛЫМДЫҚ НЕГІЗДЕРІ МЕН ҚОЛДАНУ ТӘСІЛДЕРІ.
1.1 Алгоритмнің жазылу түрлері мен құрылымдық негіздері..............................4
1.2 Алгоритмде қолданылатын тәсілдер......................................................7 1.3 Алгоритмді практикада колдану тәсілі..............................................................13 II. ТИІМДІ АЛГОРИТМДЕРДІ ҚҰРУ, ӨҢДЕУ ТӘСІЛДЕРІНІҢ ЕРЕКШЕЛІКЕРІ.
2.1Тиімді алгоритмдердің жазылу тәсілінің ерекшіліктері мен ұғымдары.......16
2.2Тиімді алгоритмдерді құру тәсілінің ерекшеліктері............................18
2.3Тиімді алгоритмдерді өңдеу тәсілінің ерекшеліктері.............................23
ҚОРЫТЫНДЫ..................................................................................................27
ӘДЕБИЕТТЕР ТІЗІМІ..................................................................................2

Вложенные файлы: 1 файл

АЛГОРИТМНІҢ ҚҰРЫЛЫМДЫҚ НЕГІЗДЕРІ МЕН ҚОЛДАНУ ТӘСІЛДЕРІ..doc

— 124.00 Кб (Скачать файл)

                                                                                                                                             

 

                                МАЗМҰНЫ

                                                                                                  

КІРІСПЕ.........................................................................................................3 І.АЛГОРИТМНІҢ ҚҰРЫЛЫМДЫҚ  НЕГІЗДЕРІ МЕН ҚОЛДАНУ   ТӘСІЛДЕРІ.

1.1 Алгоритмнің жазылу  түрлері мен құрылымдық  негіздері..............................4

1.2 Алгоритмде қолданылатын тәсілдер......................................................7 1.3 Алгоритмді  практикада колдану тәсілі..............................................................13          II. ТИІМДІ  АЛГОРИТМДЕРДІ    ҚҰРУ, ӨҢДЕУ ТӘСІЛДЕРІНІҢ    ЕРЕКШЕЛІКЕРІ.

2.1Тиімді   алгоритмдердің жазылу тәсілінің ерекшіліктері мен  ұғымдары.......16

2.2Тиімді  алгоритмдерді    құру   тәсілінің    ерекшеліктері............................18

2.3Тиімді   алгоритмдерді  өңдеу   тәсілінің  ерекшеліктері.............................23

ҚОРЫТЫНДЫ..................................................................................................27

ӘДЕБИЕТТЕР   ТІЗІМІ..................................................................................29

 

 

                                             

                                                

Кіріспе

    «Информатика  мен  есептеуіш  техника   негіздері» курсының  бірінші бөліміндегі ең  маңызды  ұғым – тиімді алгоритм ұғымы, ал негізгі  талап- есеп шешімін алгорм түрінде өрнектеп, алгоритмдік тілде жаза білуі.  Осыған байланысты алгортмнің мәнін нақты, терең түсінуі, оның  қасиеттерін,  алгоритмдік тілдің негізгі құрылымының жазылу ережесін білуі,  шамалардың  типтерін жеке ажыратуы, сондай-ақ мәндер таблицасын пайдаланып,  алгоритмнің атқарылуын бақылай білуі тиіс.

    Тиімді   алгоритмдерді   құру  және  оның  құрылымына  талдау  жасау  кезінде  алгоритм  схемаларын  қатты  көңіл   бөлінді, ал  алгоритмнің  атқарылу  процесінде  мәндер  таблицасын  пайдалануға  баса  назар  аударылады.Сөзі мағынасы  жағынан  нұсқау, жарлық, рецепт, ереже, тәртіп, заң, жоба  сөздеріне  синоним  болып  келеді.

     Тиімді  алгоритмді  белгілі  бір  дәрежеде жасампаздық,  ойлап – тапқыштық   процесс  болып  табылады. Сонымен  бірге өнертапқыштық  стандартты емес   және  дәстүрлі  емес  ыңғаймен  есептерді  шешуді талап  етеді.Көптеген  жағдайларда  қанағаттанатын  нәтижені  тез  ала  алмаймыз, сондықтан, тиімді   алгоритмді   құруда жасау және  қатені  түзету  әдісіне келтіріледі және  нәтиженің соңғы вариантын   алу үшін  талдау   және  нақтылау  бағытында бірнеше қадамдар   жасау   талап етіледі.

      Мақсаты   тиімді   алгоритмдерді  айтылған   ережелерге   келтіріп, ретімен, орналасу  тәртібімен, берілген  есептін  мәніне  қарай   шарт   қойып, есептін  дұрыс   жолын, шешімін, нәтижесін табу.

 

 

 

 

 

 

 

 

 

 

         

  Бағдарламалау парадигмаларының интеграциясы

 

Жаңа программалау тілін  жасау оның синтаксисін анықтаудан басталады. Программалау тілінің синтаксисін сипаттау үшін класс қажет. Басқа тілді сипаттауға арналған тіл мета тіл деп аталады. Тілдің синтаксисін сипаттайтын тіл метасинтаксистік деп аталады. Метасинтаксистік тілдерде оның нотациясын құратын арнайы белгілер жиыны қолданылады.

Алғашқы программалау тілдердің синтаксисін  сипаттауға пайдаланылған метасинтаксистік тілдердің бірі Бэкус – Науэр формасы болды.

Бэкус – Науэр формасында екі класс объект сипатталынады: біріншіден бұл, бағдарламалау тілдің негізгі символдары, екіншіден, сипатталынатын тілдің конструкцияларының атауы немесе металингвистикалық айнымалылар деп аталынады.

Әр металингвистикалық формула (форма) тіл конструкциясының құрылу ережелерін сипаттайды және екі  бөлімнен тұрады. Сол жағында сәйкес конструкцияны белгілейтін металингвистикалық айнымалы тұрады. Келесісінде "былай анықталады" дегенді білдіретін металингвистикалық байланыс ::=  тұрады. Формуланың оң жағында конструкция құрылуының бір не бірнеше нұсқалары тұрады. Формуланың оң жағындағы варианттары | металингвистикалық байланыстпен айырылған, ол "немесе" ұғымын білдіреді.

Металингвистикалық айнымалылардың өздері сипатталынатын конмтрукцияның ұғымын түсіндіретін сөзбен белгіленеді  және < > жақшада жазылады.

БНФ мысалы ретінде ондық  бүтін санды анықтайық:

1. < ондық бүтін сан > ::= < белгісі жоқ сан > |

+ < белгісі жоқ сан > | — <белгісі жоқ сан >

2. белгісі жоқ сан > ::= < цифра > | < белгісі жоқ сан > < цифра >

3. <цифра> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9.

Мысалы, +294 саны формула арқылы былай шығарылады:

< ондық бүтін сан >,

+ < белгісі жоқ сан >,

+ < белгісі жоқ сан > < цифра >,

+ < белгісі жоқ сан > 4,

+ < белгісі жоқ сан >< цифра > 4,

+ < белгісі жоқ сан > 94,

+ < цифра > 94,

+ 294.

Қолданылатын әдебиеттер [3,4,7].

 

Java script тілінде бағдарламалау

Java тілі Internet желісіне және Web серверге бағытталған. Оның синтаксисі C++ тілінің синтаксисіне жақын. C++ программалау тілінің барлық жағымды жақтарын алып, ондағы кейбір кемшіліктерден айырылды, соған байланысты Java тілінде бағдарламалау қарапайым болды.

JavaScript-та жазылған  программада орындауға болатын  барлық операциялар белгілі объектілермен  жасалынатын әрекеттерді сипаттайды. Бұл объектілер Netscape Navigator программасының  жұмыс облысындағы элементтер  және   HTML тілінің контейнерлері болып табылады. Объектілердің қасиеттер жиыны және объектілермен жұмыс жасайтын функциялар жиыны болады. Соңғысы әдістер деп аталады. Одан басқа тағы стандартты  математикалық типтермен жұмыс істейтін немесе программаны орындау процессімен басқаратын функциялар болады.  JavaScript –та оқиғалар болады – бұл программалық үзілудің аналогі. Бұл оқиғалар да World Wide Web желісінде жұмыс істеуге бағытталған, мысалы, Navigator"дың жұмыс облысына бетті жүктеу не  гипермәтіндік сілтемені таңдау.

 

 

Borland C++ Builder объектіге – бағытталған  орта. Borland C++ Builder ортасында жұмыс  істеу негіздері

 

Шартты оператордың  жазылу үлгісі

If <өрнек> then <оператор1> else <оператор2>

 

If (expression) statement 1  [else statement2]

Бұл оператор төменднгідей орындалады: алдымен өрнек есептелінеді. Есептеу нәтижесі булевтік типті болу керек. Егер өрнектің мәні ақиқат болса, онда statement 1  орындалады, егер жалған болса else операторынан кейінгі statement2 орындалады. Егер else операторы жазылмаса, онда кейінгі тұрған операторға бірден жіберіледі.

Қолданылатын әдебиеттер  [8,14]

 

Нұсқауыштар (Указатели). Массивтер. Құрылымдар

 

Компьютер жадысындағы  әрбір байттың өз қайталанбайтын адресі болады. Тізбектелген байттардың тізбектелген адресі болады. Егер берілген байт адресі N болса, алдыңғы байттың адресі N -1, ал келесінікі N+1 болады.

Нұсқауыш – бұл кейбір мәліметтердің адресін сақтайтын айнымалы. Нұсқауышты пайдалану көмегімен бағдарламаның орындалу барысында жаңа айнымалыларды құруға болады. Жады көлемін (байтта) сұратып, нұсқауышқа байт адресін сақтауға болады. Бұл тәсілді динамикалық тарату деп те атайды.

Келесі бағдарламаны қарастырайық:

main()

int ivar,*iptr;

iptr = &ivar;

ivar = 421;

printf("Размещение ivar: %p\n",&ivar);

printf("Содержимое ivar: %d\n", ivar);

printf("Содержимое iptr: %p\n", iptr);

printf("Адресуемое значение: %d\n",*iptr);

 

Файлдармен жұмыс

Файлға тізбектей қол жеткізгенде  ақпараттың алмастырылуы енгізу –  шығару жүйесімен берілетін арнай  буфер арқылы жасалады. Си тілінің  компиляциясы енгізу –шығаруды тізбектей келетін файлдар ағымы ретінде қарастырады.  Әр ағым файлмен байланыстырылады. Файл мен ағым арасындағы байланыс оның ашылуы кезінде жасалады. Файлдың ашылуы fopen функциясымен жасалады.  Бұл функция файлға көрсеткіш қайтарады.

Файлға көрсеткішті келесідей  сипаттайды:

FILE * lst;

Мұндағы  FILE- тип аты, ол stdio.h  стандартты анықтамада сипатталған;

lst- файлға көрсеткіш (логикалық  аты).

fopen функциясы бағдарламада келесідей  шақырылады:

lst= fopen (файлдың физикалық аты,  файлды пайдалану түрі);

Файлдың физикалық аты - сақталынған  орнын көрсетеді, мысалы "D:zni.f”- D: дискісіндегі zni.f файлы үшін.

Файлды пайдалану түрі “w” (егер файлға мәліметтерді жазу керек болса),  “r”  (файлдан мәліметтерді оқу қажет болса)  және “a” (файлдағы мәліметтерге тағы мәліметтерді қосу қажет болса) болуы мүмкін. Егер ондай файл болмаса, ол жасалады.

Файлға жазу үшін fprintf, fputs, файлдан оқу үшін fscanf, fgets кітапханалық функциялар пайдаланылады. Файлмен жұмысты аяқтағанда ол жабылу тиіс, мысалы:

fclose (lst)

lst- файлға көрсеткіш;

 

Мысал 1: Енгізілген мәтінді файлға жазу

#include <stdio.h>

main()

{ char s[50];

FILE *fl;

fl=open (“fayl.txt”, “w”);

scanf(“%s”, &s);

fprintf(fl, “%s”, s);

fclose(fl);

getchar();

}

 

Мысал 2:  Файлдан жолдарды оқып экранға шығару

#include <stdio.h>

main()

{ char s[50];

FILE *fl;

fl=open (“fayl.txt”, “r”);

while(!feof(fl))

{

fscanf (fl, “%s”, &s);

printf(“%s”, s);

}

fclose(fl);

getchar();

}

Қолданылатын әдебиеттер  [11]

 

С тілінде бағдарламалау. С ортасында жұмыс істеу негіздері

 

Тілді құрастырушылардың  біреуі Microsoft фирмасының қызметкері Андреас  Хейлсберг. Бұл тілдің келесі мүмкіндіктері бар:

  • C# тілі FCL және CLR мүмкіндіктерін ескеріп жасалған;
  • C# тілі түгелі дерлік объектіге бағытталған тіл, ондағы ендірілген типтер класс болып табылады;
  • C# тілі C/C++ тілдерінің мұрагері. Ол осы тілдердің ең жақсы элементтерін сақтайды;
  • Бұл тілде С++  тіліндегі көрсеткіштер, адрестеліну, адрестік арифметика секілді қасиеттер пайдаланылмайды. Сол себепті бұл тіл қарапайым және ыңғайлы;
  • Оның қуатты кітапханасы көмегімен Web – қызметті, деректер қорын және тағы басқа типті компоненттерді құруға мүмкіндік береді;

 

Action Script тілінде бағдарламалау 

Батырманы бағдарламалау 

1 Алдымен батырманың  суретін саламыз 

    1. Осы батырмаға маустың оң батырмасын басып панелін шақырамыз

 

    1.   Осы терезеде бағдарлама коды теріледі.

} On (relase)

{

GotoAndPlay(2);

    1. Екінші кадрды белгілеп Ғ6 батырмачсын басады.
    2. Action терезесінде келесі код теріледі

On (relase)

{

GotoAndPlay(1);

}

    1. Бірінші және екінші кадрға Action панелін шақырып Stop коммандасын орнатады.

 

            Алгоритмнің жазылу түрлері мен  құрылымдық  негіздері.

   Алгоритмдік  тіл-  алгоритмді  жазуға  және  оны пайдаланып  программа құруға  арналған  тіл. Кез келген  тіл  сияқты  ол  сиимволдар   жиынтығынан (алфавит), алгоритмдерді жазу ережелерінен  (синтаксис)  және жазуларды түсіндіру мәтіндерінен (сематика) тұрады.

    а)               алгоритм  басы  мен соңы


    б)                        берілгендерді  ендіру және нәтижені  шығар


    в)                                        шарттың сақталуына  байланысты      алгоритмнің           


                                                          орындалу  бағытын таңдау  

                                                                                                                                                                                                                     

  г)                                     информацияны өңдеу


     д)                                   байланыс  бағыттары


         Информацияны    өңдеу  алгоритмін  түрлі  жолдармен  құруға  болады,   мысалы :

         табиғи   тілде

        блок-схема  түрінде

        алгоритмдік  тілде.

        табиғи  тілде  жазылған  алгоритм  алгоритмдік символдарды  қолданып,  орындалу  реттері  көрсетіліп  жазылған  жеке-жеке  нұсқаулар   жиынтығынан  тұрады.

        Алгоритмнің  схемалық  түрі      информацияны  өңдеу  симиолдарын пайдаланып,  графикалық  түрде  жазу.

         1-мысал. n! Мәнін  есептеудің  табиғи тілде  жазылатын  алгоритмі  мен  блок-схема  құру  керек. (n!=1*2*3*…*n).

         Табиғи  тілде  алгоритмі мынадай   болады.

Алгоритм  факториал

       Басы

n  мәнін  енгізу;

k-ға  1-ді  меншіктеу; r –ға 1ді  меншіктеу.

  Цикл  басы 

r-ға  r*k  мәнін меншіктеу; 

k  мәнін  1-ге өсіру.

   Егер  k<=n болса,  қайталау

Цикл  соңы

n!  мәнін  (r)  басып  шығару    соңы

        Алгоритмдік   символдарды пайдаланып, бұл  алгоритмді  ықшамды  түрде  алгоритмдік  тілде  жазуға  болады. Мысалы:

Алг факториал

1. енгізу  n 

2. k:=1; r:=1

3. r:=r*k

4. k:=k+1

5. егер k<=n өту 3

6. шығару  r

7. соңы

 Осы  алгоритмнің   блок-схема түрінде  құрылуы.


 

 

 

  

      

  Сонымен   алгоритмдік  тіл  табиғи  тілде  жазылған  алгоритм сияқты  өзіміз  пайдаланып  жүрген  тілге  жуық, бірақ  ол  құрылымы  нақтыланған,  бірыңғай және дәл жазылатын   арнайы  символдар  мен  түрлі   ережелер  жүйесінен  тұрады. Оны   құрылымдық  алгоритм  деп те  атайды. Мұнда пайдалануға  рұқсат етілген  символдар  тілдің  алфавитін,  алгоритмді  және  берілгендерді жазу  ережелері  оның  синткасисін  құрайды. Мысалы латын, орыс, қазақ,  алфавиттерінің  әріптері, ондық  санау  жүйелерінің  цифрлары,  арифметикалық  амал  таңбалары:

Информация о работе Тиімді алгоритмдерді өңдеу тәсілінің ерекшеліктері