Алгоритм және оның қасиеттері

Автор работы: Пользователь скрыл имя, 22 Ноября 2012 в 20:30, реферат

Описание работы

Егер сіз берілген есепті шешу үшін қандай да бір программалау тілінде программа жазғыңыз келсе, онда алдымен есепті шешудің алгоритмін құруыңыз керек. Алгоритм – математикадағы ең бір іргелі ұғымдардың бірі. Алгоритм сөзі ІХ ғасырда өмір сүрген, адамдардың квадрат теңдеулерді жүйелей құрып оны шеше білуге үйреткен ұлы математик Әл- Хорезмидің атының латынша жазылуы algorithmi сөзінен алынған.

Файлы: 1 файл

реферат (2).doc

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

    Экранға  орыс алфавитінің әріптерімен  жазылғани кез келген мәтіндерді де шығаруға болады. Мәтіндер экранға шығу үшін PRINT операторынан кейін тырнақшаға алынып жазылады.Мысалы,

          10 LETX=EXP(1)

          20 PRINT"X=";X

               .

               .

               .

 

программа үзіндісі  орындалғанда экранда Х = 2.71828 мәтіні шығады.

     Экранда  шығарылатын деректердің орналасуы  әр түрлі компьютерде түрліше  болады. Егер әрбір шығарылатын  санға 15 орын бөлінген болса,  онда қатардың ең үлкен ұзындығына  қарай экрандағы қатарға 4-5 санды  сыйғызуға болады.

      Айтарлық, қатарда 60- тан кем емес  орын бар болсын. Онда оны 15 орыннан ұратын төрт аумаққа  бөлуге болады. Әрбір аумаққа  оның басынан бастап орналасатын  бір санды жазуға болады. Ол  үшін тізім элементтерін үтірмен  ажыратып жазуымыз керек.

Мысалы, ΡRINT A, B, SQR (A^2+B^2) операторының орындалуы үш санды төмендегідей тәртіпен баспаға шығарады:

 

А –  ның мәні                  В – ның мәні                         А+В 


1 орыннан           16орыннан  31 орыннан             46 орыннан 

 

    Сандарды  тұрақты нүктелі пішінде және жылжымалы нүктелі пішінде баспаға шығаруға болады: Бұл  олардың шамаларымен түріне және компьютерге байланысты болады. Өйткені әртүрлі компьютерлер деректердің әртүрлі пішімдерімен амалдар орындайды, олай болса соған сәйкес сандарды жазып көрсету аралықтары да түрліше болады. Егерде шығарылатын тізімдегі элементтер саны 4-тен көп болса, онда лағашқы төртеуі 1-қатарда қалған төртеуі 2-қатарда т.с.с орналасады. Сонымен, аумақтың сол жақ шетнен бастап орналасатын болады. Сандарды баспаға шығаруға аумақтағы бірінші орын санның таңбасына бөлінеді. Егер санның таңбасы «+» болса онда ол орынды бос орын баспаға шығады.

    Мысалы PRINT 15,26,34,45,50,62,70,83,30,98 операторының орындаллуы  нәтижесінде сандар төмендегідей  реттілікпен экранға шығады:

              15 26 34 45

              50 62 70 83

              90 98

    Осылайша, бөлгіш ретінде үтірді пайдалану,  әр уақытта кезектегі санды  келесі аумаққа шығарады. Алдыңғы  қатардағы барлық аумақтар толып  қалса, келесі қатардан бастап  сандарды аумақтарға орналастырады. PRINT операторының шығару тізімінде бөлгіш ретінде нүктелі үтірді пайдалансақ, онда сандарды бұданда жиі (тығыз) етіп баспаға шығаруға болады. Бұл жағдайда келесі сан аумаққа емес, бір бос орыннан кейін баспаға шығады. Мысалы, PRINT 1; 2; - 3; -4; 5; 6; 7; 8; 9; 10; операторының орындалуы нәтижесінде сандар мынадай реттпен экранға шығады: 1 2 -3 -4 5 6 7 8 9 10.

    Егер  алдыңғы қатарда тізімнің кезектегі  элементін баспаға шығару 

үшін  орын жетпейтін  болса, онда ол келесі қатардың басынан  бастап баспаға шығарылады.

    Программа  мәтіннің де бірнеше баспаға  шығару операторы PRINT бола алады. Бұл жағдайда кезектегі баспаға шығару операторы жаңа қатардың басынан бастап баспаға шығару операторының тізімінде аяқталған бөлгішке (үтір, нүктелі үтір немесе таңбаның жоқ болуы) тәуелді болады:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Айнымалыларға мән беру операторы.

DATA операторы

 

    Айнымалыларға мән беруді DATA READ, RECTORE  операторларының көмегімен жүзеге асды.

    DATA  операторлары бұл оператордың  LET операторын өзгешелігі мұнда  айнымалыларға мән беру мәліметтер  блогын пайдалануға негізделген.  Айнымалыларға мән беру меншіктеу  осы блокпен сандарды не символдық тұрақтыларды оқу жолымен орындалады. Бұл бағдарламаны орындар алдында ЭЕМ зердесінде қалыптастыратын реттелген сандық информацияларды бастапқы бағдарламада DATA операторы арқылы беріледі.

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

k DATA C1,C2…Cn

Мұнда k-қатар нөмірі, DATA-оператордың аты, C1,C2…Cn- үтірлермен бөлінген тұрақтылар.

    Мысал:

10 DATA-1;0;86;0. 3Е-5 бұл  оператор бойынша бағдарламаны  орындар алдында бір саны бірінші  0.86 саны екінші 5 және 0,310 саны DATA операторы  орындалуын операторы тобына жатады және бағдарламаның кез-келген жеріне құрылған бағдарлама бойынша ЭЕМ-де есеп шығару екі кезеңнен тұрады.

1. Бағдарламаның операторын ЭЕМ-ге түсінікті үлгіге түрлендіру. Бұл кезеңде DATA операторы арқылы берілген мәліметтер блогы қалыптасады.

2. Бағдарламаның операторын нөмірлерінің өсу ретіне қарай орындалады. Егер бағдарламаның орындалуын барысында DATA операторы кезеңде өтіп кеткендіктен ол есептеуге ешқандай әсерін тигізбейді. Осы бағанда алынған DATA операторы орындалмайтын оператор болып табылады. Бастапқы бағандарда бірнеше DATA операторлары болуы мүмкін бірақ олардан тек бір ғана мәліметтер блогын жасалады.

Мысалы,

     5 DATA 2,- 1,0

               . . .

   20 DATA 0,3 -71,12

            . . .

  100 DATA 10, 12

    Бұл  жағдайда мәліметтер блогы DATA операторының бағдарламада кездесу ретімен жасалады.

    DATA операторын  басқа оператормен бірге бір  қатарға жазуға болмайды ол  нөмірленген қатардағы жалғыз  ғана оператор болуы тиіс. DATA операторы  READ операторлардың көмегімен оқылатын мәліметтер блогын жасайды.

 

READ операторы

 

    READ операторы – деректер блогынан мәндерді іріктеп алуы операторлар болып табылады.

Операторыдң жазылу пішімі:

    k READ v1,v2,vN

Мұндағы k-қатар  нөмері, READ-оператордың аты, v1,v2,vN- айнымалылардың аты.

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

    Мысалы, мынадай программа үзіндісі берілсін 

        10 DATA 6,-10 1.2, 100

        20 READ X,Y,Z

               .

               .

               .

        50 READ A

               .

               .

               .

20 қатардағы оператордың орындалуы кезінде х айнымалысына 10-мәнді A,Z айнымалысына 1,2-мәні меншіктеледі, бұдан соң деректер блогында пайдаланылған тек бір ғана 100 саны қалады. Ол ақырында READ-операторы орындалғанда іріктелініп алынуы мүмкін. Мысалы, 50-қатардағы READ-операторы орындалғанда сол қалған 100 саны А-айнымалысына меншіктеледі іріктелініп алуға ғана рұқсат етеді. Мысалы, деректер блогын бірден үшінші санды алынған деректер блогынан санды алуға әрекет жасау қате есептеледі. Интерпретаторы «?» таңбасымен баспаға шығарады және программаның орындалуы тоқтатылады. Айнымалылардың бастапқы мәндерін қалыптастыру үшін READ-операторын пайдалану ыңғайлы. Бұл оператордың жалпы санын үнемдейді.

    Бастапқы параметрлерді өзгерту үшін тек  DATA операторының тізімін өзгерту ғана талап етіледі. Бір қатарға бірнеше операторды, жазуға READ-операторын программаға  кез-келген орынға жазуға болады. Программаны орындалуының алдында интерпретатор барлық DATA операторын олардың программадағы кездесу реті бойынша қарап шығып, бір ғана деректер блогын жасайды. Программа READ-операторы кездескен сайын интерпретатор блогынан мәндерді ретімен алады және оларды READ-операторының айнымалысына ретімен оқылған дерек мәндерінің орны деректердің кезектегі элементтеріне орналастырылған ерекше көрсеткіштің көмегімен есте сақталады. Келесі READ-операторы мәндерді осы элементтен басып алады.

RESTORE операторы

 

    Бұл оператор деректер блогынан мәндер алынып болған жағдайда оны қалпына (бастапқы күйіне ) келтіру қызыметін атқарады. Оператордың  жазылу пішімі: RESTORE

    Мұнда RESTORE  (қалпына келтіру) оператордың аты. Бұл оператор орындалғаннан кейін READ оператормен сандарды оқу деректер блогының бірінші санынан басталады.

    RESTORE операторы программа жұмысының кез келген кезеңінде, яғни деректер блогынан барлық сандар оқылып болғанға дейін де орындала алады.

         Мына:

        10  DATA 10,0.3 2.8. -0.9

                  20  READ M,A,B,C.

                        .

              .

              .

  • RESTORE

.

               .

               .

         120 READ A,A,B,C.

 

    программа  үзіндісінде 20-оператор орындалғанда  айнымалыларға  мынадай мәндер  меншіктеледі.

 М=10; A=0.3; B=2.8; C=-0.9.

    Есепті  шешу кезеңінде бұл айнымалылар  қандайда бір басқа мәндерді  де қабылдай алады. Бұдан әрі  А,В және С айнымалыларына М  айнымалысының мәнін қалпына  келтірмей-ақ бұрынғы мәндерін  қайтадан меншіктеу  талап  етілсін делік. Бұл үшін деректер блогынан сандарды бірінші саннан бастап оқуды даярлайтын RESTORE операторы пайдаланылады. М айнымалысына бірінші санды меншіктеуді қалдырып кету үшін 120-операторда А айнымалысына екі рет жазылған. Мұнда А айнымалысына бірінші меншіктелген мән жазылған, ал одан кейін екінші рет меншіктелетін мән ақиқат болады.

    RESTORE операторы DATA операторының кіші  нөмерлі қатарларынан бастап DATA операторындағы тұрақтыларды қайталап  пайдалануға мүмкіндік береді. RESTORE операторы қатардағы бірден бір  оператор немесе қатардағы бірнеше оператордың бірі бола алады.

Шартты өту  операторы

 

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

    Толық пішім                                Қарастрылған пішім

          Егер «шарт»                                   Егер «шарт» 

                    Онда «1-әрекет»                            онда «әрекет»

         Әйтпесе «2- әрекет»                        бітті

          Бітті 

    Ал BASIC  программалау  тілінде осы егер команданың  қызметін атқаратын арнайы оператор  бар. Оны шартты операторы деп аталады. Бұл операторды да толық және қарастырылған пішімді жазып пайдалануға  болады.

      Шартты  өту операторының толық пішімінің  жазылу үлгісі:

    1kIF el xe2  THEN k+10 ELSE k+20

    2kIF el xe2 THEN k 1 ELSE m2

    3 kIF el xe2  THENe1 ELSE e2

    4 kIF el xe2  GOTO k+10 ELSE k+20

 Мұнда:

  • k қа тар нөмірі;
  • IF- оператордың аты;
  • el xe2  - тектлерілген шарт;
  • е1*е2- арияметикалық өрнектер;
  • х-қатынас оператордың таңбалары (<,<>, =,)
  • m1 m2 – шаттың сақталу немесе сақталмауына байланысты орындалатын оператор:

-  THEN- қызметші сөз:

  • ELSE- Қызметші сөз:
  • k+10- Шатты сақталған жағжайда оператордың нөмірі;
  • k+20- Шартты сақталған жағдайда  оператордың нөмірі:
  • GOTO- шаттыз өту операторы:

 

 

 

 

 

 

 

 Шартсыз өту операторы

 

    Шарттсыз өту операторын  GOTO (өту) есептеуді одан әрі жалғастыруда программаның келесі кезекте орындалытын операторын көрсету үшін, яғни программаның қандайда бір бөлігін өту үшін қолданылады. Оператордың жазылу  пішімі:

    GOTOk

    Мұнда GOTO-оператордың аты; k-GOTOоператордың соң орындалатын оператордың қатарының нөмірі. Осылайша, GOTO операторы программаның табиғи реттілікпен орындалатын бұзады. Мысалы, 10 GOTO 120 операторын нөмірі  10-қатардан кейін 120- операторы орындалады.

    Мысалы,

   10 A=7

   20 GOTO 40

   30 A=1

   40 A=A+3

   50 PRINT A

   60 END

    Пргорамма орындалғанда 10- қатардағы меншіктеу операторы А айнымалысына 7 мәнін меншіктейді. 20 – қатардағы операторынна кейін 40- операторы орыедалады, онда айнымалсына сол айнымалының алғашқы мәніне 3-ті қосқандағы мән меншіктеліп нәтижесі баспаға шығарылады. Ал мына төмендегі программа орындалғанда Ы. Алтынсариннің «Кел балалар оқылық» атты өлеңі экранға шығады.

       10 REM «өлең»

       20 PRINT «Кел балалар оқылық» GOTO70

       30 PRINT  «Ықылыспен тоқылық» GOTO 80

       40 PRINT  «Шамнан шырақ жағылар» GOTO 90

       50 PRINT  «Іздемей-ақ табылар» GOTO 100

       60 PRINT «Оқығанды көңілге» GOTO 30

       70 PRINT  «Оқысаның балалар» GOTO 40

       80 PRINT  « Тілегенің алдыңнан» GOTO 50

    Бұл программа орындалғанда мына төмендегідей нәтиже экранға шығады.

      Кел балалар оқылық

     Оқығанды көңілге

Информация о работе Алгоритм және оның қасиеттері