Паскаль және Бейсик тілдерінде программа құру ерекшеліктері

Автор работы: Пользователь скрыл имя, 04 Декабря 2012 в 08:54, реферат

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

Жоғарғы деңгейлі программалау тілдерінің ішінде дүние жүзіне кең тараған тілдердің бірі – Бейсик. BASIC (Beginner's All purpose Symbolic Instuctions Code ) – “Жаңадан үйренушілер үшін символдық нұсқаулар түріндегі көп мақсатты тіл ”сөйлемінің қысқарған сөз ретінде алынған түрі. Бейсиктің алғашқы жеңіл варианты 60 – жылдардың ортасында Америкада жарыққа шыққан болатын.

Содержание работы

Кіріспе

Негізгі бөлім
1.Паскаль және Бейсик тілдерінде программа құру ерекшеліктері.
1.1 Сызықты және тармақты құрылымды алгоритмдерді программалау.
1.2 Қайталанған құрылымды алгоритмдерді программалау.
2.Тақырыпқа қатысты есеп шығару.
3.Графика.
Қорытынды.
Пайдаланылған әдебиеттер.

Файлы: 1 файл

beysik_zhne_paskal_tilderinde_programma_kuru_erekshelikteri.doc

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

 

           <Процедура  аты> [(нақты  параметрлер  тізімі)];

              (тізім  үтірлер арқылы бөлініп жазылады);

Параметрсіз  процедура. Көптеген  процедуралар  формальды параметрлерді пайдаланбай , нақты параметрлермен  тікелей жұмыс істейді. Мұндай параметрсіз процедура тақырыбының жазылу  үлгісі:

 

                Procedure <атау>;     

 Бұл  кезде   шақыру  командасы  тек  процедура   атауынан  тұрады.

 

Qbasic, Pascal   тілдерінде  пайдаланушы  – функциямен жұмыс

 

      Qbasic тілінде пайдаланушының  функциясымен (процедура - функцияны)  құрылымдық   форматта  екі түрлі етіп  жазу  мүмкіндігі   бар (Function - функция):

                 1)  DEF FN  атау (айнымалылар тізімі)

                      FN  атау=… 'функция          

                      END  DEF

 

                 2) FUNCTION <атау> (айнымалылар тізімі) [STATIC]

                     <атау> =…' функция

                     END  FUNCTION

 

Мұнда  мәні  есептелетін  функция атауы DEF немесе  FUNCTION қызметші сөздерінен соң жазылатын атаумен бірдей болуы тиіс. Програманың FUNCTION Y(x) қатарын енгізген кезде, SUB форматы сияқты бөлек терезеде

                        FUNCTION

                        END  FUNCTION

құрылымы  көрінеді. 

        Pascal тілінде пайдаланушы – функция.  Бір ғана функция мәнін есептейтін көмекші программаны Паскаль тілінде функция деп атайды. Функция тақырыбының процедура тақырыбынан айырмашылықтары: тізім соңындағы жабу жақшасынан соң қос нүкте қойылып, одан әрі  функция  типі  жазылады; формальды  параметрлер – нақты  параметрлер  меншіктелетін  параметр – мәндер. Мұнда анықтаушы функция (өрнек)  мәнін есептеу  операторының  жазылуында  да  өзгешелік бар: Өрнек меншіктелетін айнымалының  атауы – function тақырыбындағы атаумен бірдей болуы тиіс.

       Негізгі  программаға енгізілетін   функцияны шақыру  командасы да  жеке оператор түрінде емес, Бейсик  тіліндегі секілді sinx,cosx тағы  басқа стандартты функциялар  сияқты, өрнекке енгізіліп  жазылады.

 

Qbasis, Pascal тілдерінде жолдық мәліметтер

 

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

         Компьютер жадында жолдық тұрақтылар  ендірілетін арнайы блок бар.Жолдық  айнымалыға меншіктелген әр мәтін  осы блоктың бір адрестен тұратын ұяшықтар тобына енгізіледі.Мысалы,компьютердің A$ = “Мен оқушымын” командасын орындауы нәтижесінде A$  адресіне осы тұрақты жазылып қойылады. Бейсикте LEN (A$) функциясы арқылы мәтін ұзындығы (length -ұзындық) есептеледі.Мәтіндермен біріктіру және қиып алу амалдарын ғана орындау мүмкін.Біріктіру амалының таңбасы – плюс (+), ол екі мәтінді бір мәтін түрінд біріктіреді. Қиып алу операциясы мәтіннен бір шама үзінді бөліп алады.Ол Бейсикте MID$, LEFT$  және RIGTH$ функциялары арқылы орындалады (mid – ортта,left – сол, right-оң).   MID$(A$,M,N) – A$  айнымалысы мәнінің m – символынан бастап 

n – символын, MID$(A$,N) - A$ мәнінің   m – символынан  басталған үзіндісін,LEFT$(A$,N) – мәнінің  сол жақ n  символын, RIGTH$(A$,N) A$  мәнінің оң жақ n символын бөліп  алатын функциялар.

Pascal тілінде жолдық мәліметтер. Жолдың типі оң жағына ашу,жабу тік жақшалары қойылып,олардың ішіне мәнін жадқа ендіру үшін таңдап алынған бүтін сан енгізілген STRING (string - жол) қызметші сөзі арқылы анықталады.Оны программаның TYPE не VAR бөлімінде сипаттауға болады.Мысалы, а1:=’сынып ’

                      Oku:= ‘Мен оқушымын’

1) type  jol1=string[5];jol2=string[12]

      var f1:jol1;oku:jol2;

2) var f1:string[5];oku:string[12]

 

Мұндағы string[5]6string[12] – жолдық типтер; jol1,jol2 – осы типтерге берілген атаулар, а1,oku – жолдық айнымалылар.STRING(M) типін оқып шығып, компьютер сипатталған айнымалы  үшін жадтан әрқайсысына  бір  символ сиятын қатар орналасқан M ұяшық қалдырып кетеді. Турбо Паскальда жолдармен түрлі әрекеттер жасап,өңдеуге арналған стандартты функциялар бар.

LENGTH, “+” не CONCAT, COPY,  POS (length –ұзындық; “+” –  плюс таңбасы,concat –біріктіру;copy –көшірме; pos(position)-позиция,тұрған орны).

  • Length(стр)-жолдың ұзындығын есептейді (стр(стринг)-жолдық айнымалының не оның мәнінің орнына пайдаланылған символдар тізбегі).Мысалы,length(a1)=S;length(oku)=17:length(‘мен’)=3
  • Concat (стр1, стр2) не стр1+стр2 – стиринг1 мен стринг2 жолдарын біріктіреді.

Concat (‘оқушы’,’мын’) – оқушымын;             

  • Copy (стр,m,n) – жолдың m – символынан бастап n символдық үзіндісін кесіп алады.

     Copy(‘оқушымын’,3,5) – ушымы;

  • Pos(стр1, стр2)- стринг2 жолынан стринг1 үзіндісін іздеді де,жолдың басынан есептегенде үзінді басталған орынның нөмірін анықтайды,үзінді табылмаса, оны 0 –ге тең деп нәтижелейді.

        Pos(‘ушы’,’оқушымын’) – 3

 

Берілгендер файлы.Жазу

 

Бейсикте төрт бұрышты кесте түрінде берілгендермен өңдеу жұмыстарын программа арқылы орындауға болады.Дискіге жазылатын  информация берілгендер файлы (БФ) деп, онымен жұмыс істеуге арналған программаны файлдарды басқару программасы не программалық файл (ПФ) деп атайды.Мысалы,

         1. Мұстафаева Жадыра  1975  қазақ

         2. Қарабаев Мұқтар       1974   қазақ   

         3. Сармантаева Жанна   1974  қазақ

  Берілгендер  файылының элементі жазу деп аталады; жазу құрайтын мәндер өріс элементтері делінеді.Яғни тізімнен тұратын берілгендер файлы – жазулар жиынтығы, әр жазу – файлдың бір элементі.Жазу ұзындығы 255 – тен аспауы тиіс.Өрістің атауы 8 символдан аспауы тиіс.

Мысалда берілген мәліметтік тізімде әр жазу төрт өріс элементінен, ал файл үш элементтен және оларға сәйкес төрт бағаннан тұр.Өріс элементтері ретінде студенттердің реттік нөмері, аты –жөні,туған жылы, ұлты жазылғандықтан,сипаттаманы СТУД1  деп атап, мынадай түрде жазып қоюға болады:

        СТУД1(нөмірі, аты-жөні, туған жылы,ұлты)

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

    Файлды  дискіге жазу не оны дискіден мәшиненің жадына енгізу жолдардың басынан бастап ретімен жүргізіледі.Файлды жазуға, оқуға арналған дискілік операторлар барлық компьютерлер үшін бірдей емес.

     IBM  PC  дербес компьютерінде тізбекті ену файлымен жұмыс істеу программасында пайдаланылатын операторлар:

    OPEN (ашу)- файлды дискіге жазу не дискіден  оқу үшін файлды ашу:

    PRINT # M –файл жолын дискіге жазу;

    INPUT # M – файл жолын дискіден оқу;

    CLOSE (жабу)- файлды жабу

    Бұлардың  программада жазылу түрлері:

1) Атауы F$ арқылы берілгендер файлын дискіге жазу үшін орын белгілеп, оны ашу:

         1: OPEN “O”,# M, F$        

         2: OPEN F$  FOR   OUTPUT  AS  # M

    Дискіде F$ атаулы файлды оқу үшін оны ашу:

          1: OPEN  “I” ,# M ,F$

          2: OPEN  F$  FOR INPUT  AS  # M    

Мұндағы:

O,I – OUTPUT (шығару), INPUT (ендіру) қызметші сөздерінің бірінші әріптері;

F$ -берілгендер  файлының атауы;

# M – файлдың  логикалық нөмері;

        Кез келген БФ тек жазу не  тек оқу үшін ғана ашылыды.  Оларды қатар орындау үшін ашу мүмкін емес.

2) Атрибуттарының  атаулары A, B$, C, D$   арқылы және  логикалық нөмірі.#1 арқылы белгіленген  файлдың бір жазуын дискіге  тиеу операторы:

            PRINT  #   1, A;  “,”; B$; “,”; C; “,”;D$

  Мұндағы “,” таңбасы – мәндерді дискіге үтір арқылы ажыратып, үнемді түрде жазу белгісі; D$ - тун соң қалдырылған бос аралық –жолдың аяқталу белгісі.

3) A, B$, C, D$  элементтерінен  тұратын файл жолын дискіден  оқу (жадқа енгізу) операторы;

            INPUT #1, A, B$, C, D$   түрінде беріледі. Әр элементті үлгі бойынша манитор экранына шығару, әдеттегідей, PRINT операторы арқылы орындалады.

4) Ашылған берілгендер  файлымен жұмыс істеуді аяқтаған  соң оны жабу керек.Жабу операторының  жазылу түрі:

       CLOSE #1 не  CLOSE 1

Жазу  Паскаль тілінде түрлі типті элементтерден тұратын күрделі типті берілгендер ерекше орын  алады.Ұзындығы 255 аспайтын мұндай берілгендердің әр қайсысын жазу деп, ал жазу құрайтын элементтерді жазудың өрістері деп атайды.Мысалы,

           142141  Айдаболова Фариза   1986    қазақ

           142142  Алибаева   Нұргүл     1986    қазақ

           142143  Болатова   Гүлдана    1987    қазақ

Жазудың сипстталу  үлгісі Type бөлімінде типтың атын анықтап  аламыз.          

Type <тип атауы>= record<өріс атауы>: <өріс типі>;

                                            <өріс атауы>:<өріс типі>;

                                  end;

var<жазу атауы>:< тип атауы>;

Өрістің атау 8 таңбадан аспауы тиіс.Өріс айнымалыларын  толық түрде жазу гүрделі  программаларды оқуды қиындатады. With (қосу,біріктіру) жалпы түрі.                                   

                  With <жазу атауы> do

                   Begin

                         <операторлар>;

                   end;

   Бейсиктегі  сияқты,Паскальдаерекше орын алатынберілгендер  файлы – жазулардан тұратын элементтер тізбегі.Жазулар саны файлдың ұзындығы деп аталады.Мысалы,

                142141       Айдаболова  Фариза     1986         қазақ

                142142       Алибаева Нұргүл         1986         қазақ

                142143       Болатова  Гүлдана       1987         қазақ

Құрылымы; студент (шифры,аты –жөні, туған жылы,ұлты ).

Файл типін  сипаттау үлгісі мынадай:

         Type<тип атауы>=file of<элементтер  типі>;

         Var <айнымалы атауы>:<тип атауы  >;

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

          Type  student = record   a1:longint; a2:string[17];

                                                  a3:integer; a4:string[10];

                                     end;

           var  F:file of student;v:student;         

     Мұндағы  student – жазу типінің атауы; f –  элементтері сипатталған жазулардан  тұратын файлды, V –осы жазуларды  анықтайтын айнымалылар.Жазу өрістері  нүкте арқылы бөлінгег жазу  мен атрибут атауларынан тұрады:v.a1, v.a2, v.a3, v.a4.

     Файл элементтері дискіге жазылғанда  0-ден бастап автоматьы түрде нөмірленіп қойылады.Файлды СУСҚ тиеу файлды жазу деп аталады, ол СҚ –дан анық машинаның аперативтік жадына енгізу файлды оқу деп аталады.

F – файлдық  айнымалы

Bf – берілгендер  файылының атауы меншіктелетін  айнымалы

V – файлдық  элементтер болсын

v.a1, v.a2, v.a3, v.a4 - өрістік  айнымалылар болсын

Турбо Паскальда  да файлмен жұмысты тізбекті және еркін ену тәсілдері бойынша  жүргізу мүмкін.Файлды жазу үшін мынадай  операторлар пайдаланылады:

      ASSIGN(f,bf) –bf  файлға f  атауын беру.Ол bf-ң мәнін f–ке меншіктейді.  Компьютер f-ті саны белгісіз  элементтерден тұратын bf- тің  атауы деп қабылдайды.Бұл әдіс  программада түрлі берілгендер  файлын өңдеуге мүмкіндік береді;

     REWRITE(f) – атауы assign операторында анықталған  файлды жазу үшін дискілік  файлды ашу.Ол берілгендер файлы  үшін дискіден орын бөліп,көрсеткішті  осы орынның басына орналастырады.

Ескерту.Егер ол дискіде осындай атаулы Б.Ф бұрыннан бар болса rewrite (f) арқылы өшіріледі;

      WRITE(f,v) –f үшін бөлінген дискілік  файлға v  элементін жазу.Ол элементті  көрсеткіш тұрған орыннан бастап  жазылып шығады.Оператор орындалған  соң көрсеткіш келесі элемент  жазылатын орынның басына ауысады;

      CLOSE(f) – файлды жабу ;

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

      ASSIGN (f,bf)- bf файлын f  файлын байланыстыру;

      RESET(f)-атауы f пен берілген сыртқы  файлды ашып,көрсеткішті осы файлдың басына орналастыру;

     WHILE  NOT  EOF(f) –do - көрсеткіш файлдың  соңына жеткенге дейін программаны  орындау циклі. EOF  end  of  file –  файл соңы.Егер көрсеткіш файлдың  соңғы элементтерінен енді асса,eof мәні –true, әйтпесе-false;

      READ(f,v)- атауы f арқылы берілген  файлдың бір элементін дискілік  файлдан оқу.Оператор орындалып  болған соң көрсеткіш келесі  элементтің басына ауысады.

     WRITE (v.a1, ‘ ’,v.a2, ‘ ’,v.a3, ‘ ’,v.a4 )- файл  элементін экранға шығару.Кейде  мына типте де жазуға болады.  Write (v.a1:7, v.a2:17)

String типті айнымалы  мәнін бағананың сол жағынан  бастап шығарған дұрыс.Ол үшін v.a2,’’:18-length(v.a2) қолданылады.

     Компьютерде  жазуды бірден іздеп табу үшін  программаға seek(f,k-1)

операторы, одан кейін read (f,v) не rewrite (f,v) операторларының  қажеттісі енгізіледі.Егер іздеу  белгісі ретінде орындалатын k саны  алдын ала енгізілмесе, онда seek (f, k-1) операторы керсеткішті 0 жазудың  басына апарады.Керісінше жағдайда көрсеткіш  k-шы жазудың басына орналастырады.(seek-іздеу).

     Filesize(f) –файл жазулардың санын анықтайды.Сыртқы  файл жазуларына осылайша тез  жету тәсілі файлға еркін тікелей  ену тәсілі деп , ал файлдың  өзі еркін ену файл деп аталады.Жазудың  ұзындығы 32767 –ден аспауы тиіс.    

 

        

 

 

 

 

 

  

 

 

 

 

 

 

 

        2 Тақырыпқа қатысты есеп шығару

 

1- мысал . y=sin x +10 болғандағы z= -  өрнегінің мәнін есептейтін программа құру керек.

Шешуі:

 

Qbasic тілінде

Pascal тілінде

 

Rem

INPUT “X=”;X

Y=SIN(X)+10

Z=X^2/ Y

PRINT “Z=”;Z

END

 

Program kj;

Var x,y,z:real;

Begin

Write (‘x=’);

Y:=sin(x)+10 ;z:=(x*x)/ y;

Write(‘z=’,z);

End.


 

2- мысал. Y=x +7 болғанда  z=x+2y  өрнегінің мәнін есептейтін программа құру керек .

Шешуі.

 

Qbasic тілінде

Pascal тілінде

REM 
INPUT X 
Y= X^2+7

Z=X+2*Y

PRINT “Z=”;Z

END

Program hj;Uses crt;

Var x,y,z:real;

Begin write (‘x=?’); readln(x);

Y:=x*x+7; z:=x+2*y

Write ( ‘z=’,z );

End

Информация о работе Паскаль және Бейсик тілдерінде программа құру ерекшеліктері