Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб1жАНС.docx
Скачиваний:
16
Добавлен:
13.03.2015
Размер:
265.67 Кб
Скачать

2. Алгоритмдерді Паскаль программалау тілінде әзірлеу

Алгоритмдерді программалау тілінде әзірлеу программа деп аталады. Алгоритмдерді көрсетудің бүл программасы орындаушы компьютер болған жағдайда пайдаланылады. Тіл операторлары дегеніміз - компьютерге әрекеттерді орындауды ұйғаратын алгоритм командасы.

Программалаудың тілдері көптеп саналады. Паскаль тілі - IBM PC дербес компьютерлері үшін программалаудың ең үздік оқу тілдерінің бірі. Басқа жоғары деңгейлі программалау тілдері сияқты Паскальдың да өз алфавиті, синтаксисі, семантикасы бар. Алфавит - пайдаланылатын түрлі символдар: эріптер, цифрлар, таңбалар жэне белгілер. Синтаксис - машинаның іс-әрекетін анықтайтын нұсқауларды (команда, оператор), функцияларды, деректер мен өрнектерді жазу ережелері.

Паскалъ тілінің алфаеитінің символдары:

1.  Латын алфавитінің бас жэне кіші әріптері;

2. Араб цифрлары;

3. Өрнектаңбалары:+,-,*,/.

4. Қатынас таңбалары: =, < >, <, >, < =, >=7

5. Арнайы символдар: :,;,",(,),?,!,#, т.б.

Паскалъ тілініңжай және күрделі типтері бар. Олар:

A)  Жай типтер: скалярлық және шектеулі. Скалярлық типтер: бүтін (integer), нақты (real), символдық (char), логикалық (boolean).

Б) Күрделі типтер: жиым (array), жол (string), жазу (record), файл, жиын.

B)  Сілтеме.    

     Паскалъ тілінің операторларына:

1) := - меншіктеу;

2) read, readln - енгізу;

3) write, writeln - шығару, т.б. жатады.

Программаның цүрылымы:

Program <Атау>;                          - программа тақырыбы деп аталады.

Таңбалар бөлімі (Label);

Тұрақтылар бөлімі (Const);

Типтер бөлімі (Type);

Айнымалылар бөлімі (Var);

Процедуралар жэне функциялар (Procedure, Function);

Басы (begin)

{ Операторлар бөлімі}

Соңы (end). Сызықтық программалау:

Program esep;

Var a,b,S,R,K:integer;

Gr, Snreal;

Begin  K:=l; S:=0;

Writeln('a,b-ны енгіз:');

Readln(a,b);

S:=a+b;   R:=a-b;   K:=a*b;   Sr:=S/2;   Gr:=sqrt(K);

Writeln ('Қосынды=', S, 'Айырма=', R, 'Көбейтінді=', К);

End.

 

Тармақталған программалау:

Program esepl;

Var   x:integer;   y:real;

Begin Write('x енгіз:');   Readln(x);

               If x > 0 then y:=5*sin(x)

                             Else y:=abs(x);

               Writeln ('Y =', Y:2:2);

End.

Қайталанған циклді программалау:

1 Үшін-ге

Program esepteu;

Var   i,n:integer;    S:real;

Begin   Write('n енгіз:');   Readln(n);

                   S:=0;

           For i:=l to n do      S:=S+i;

 Writeln ('Қосынды =', S:2:2);

 End.

 

 

2 Әзірше-ге

Program esepteu;

Var    i,n:integer;   S:real;

Begin    Write('n енгіз:');    Readln(n);

           S:=0; i:=l;

        While i <=n do  begin

                        S:=S+1;    I:=i+1;   end;

        Writeln ('Қосынды =', S:2:2);

End.

3 Дейін-ге

Program esepteu;

Var   i,n:integer;   S:real;

Begin   Write('n енгіз:');   Readln(n);

               S:=0; i:=l;

        Repeat

               S:=S+1;     I:=i+1;

            Until    i>n;

    Writeln ('Қосынды =', S:2:2);

End.                                 

 

2.1. Сызықтық алгоритмдерді программалау

Оцыту мацсаты: диалогты программалар логикасын түсіну, команданы атқаруды меңгеру, дискіге жазу және каталогты қарау.

 Ұсынылатын командалар: енгізу, шығару командалары, түсіндірмелердің жазылуы.

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

Есеп былай тұжырымдалады: формула бойынша есептеуге арналған сызықтық алгоритмді құрыңдар; берілгендерді диалогпен енгізіңдер. Мысал келтірейік:               -

Program audan;

Var a,b,c: integer;

           p, s:real;

begin

          writeln('a,b,c ентіз :');

         readln(a,b,c);p:=(a+b+c)/2;s:=sqr(p*(p-a)*(p-b)*(p-c));                                                                                                                                                                                                                                                                                                   

         wгі1е1п('Аудан=', s:2:0);

end.

 Алғашқы  нұсқау  болмаған  жағдайда  оқушы  программаны  орындауға жібергеннен кейін ? белгісін немесе бос орынды көріп, сасып қалады. Сондықтан    алғашқы    кезеңнен    бастап,    нұсқауды    енгізу    дағдысын қалыптастыру   қажет.   Сондай-ақ,   біраз   уақыт   өткеннен   кейін   оқушы берілгендерді  қандай  ретпен  енгізу  керек  екенін  ұмытып  қалады.   Сол себептен, әрбір енгізілетін берілгендерге нұсқауларды жеке -жеке берген дұрыс.