Практикалык жумыс

Автор работы: M*********@mail.ru, 28 Ноября 2011 в 14:03, реферат

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

Паскаль тілін 1970 жылы швецария ғалымы Николас Вирт ойлап тапқан және оны VII ғасырда өмір сүрген француз ғалым-философы Блэз Паскальдің құрметіне PASCAL деп атаған болатын. Қазіргі кезде Паскаль программалау тілінің көптеген версиялары бар және олар бір-бірімен сәйкес келе бермейді.
Блэз Паскаль 1623 жылы францияның Клермон-Ферран қаласында өмірге келген. Оның қабілете жас кезінде көбінесе математика саласынан көп көріне бастаған. Ол 1662 жылы дүниеден қайтқан соң бүкіл әлемде ұлы маематик ретінде қалды. Математикадан басқа Паскальдің таланты физика, философия, әдебиеттану мақсатында есептеу машинасын ойлап тапты. Оның әкесі салық жинаушы болғандықтан бұл машина есептеу жұмыстарында өте қажетті болды.

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

1) Жүктеу түрлері. ТР ортасында жұмыс жасаудың негізгі жолдары. Программа мәтінін редакторлеу, өңдеу процессі.
Программаны редакторлеу, өңдеу командаларын Pascal-дің командалық менюі көмегімен орындап үйрену. Программаны құрастыру. Оның бөлімдері. Бөлімдерін сипаттау. Программаның әрбір бөлімінің атқаратын қызметі.

Begin тақырыбына арналған есептер.

Меншіктеу, енгізу, шығару командаларын пайдаланып қарапайым программаларды құрастыру. Read, Readln, Write, Writeln командалары.

Тармақталу командалары. Құрама операторлар.

Құрама шарттар. Мәтіндік шарттар. Таңдау командасы.

Шарттың алдында қойылатын циклдарды ұйымдастыру. While do циклдағы құрама операторлар. Шарттың соңында қойылатын Until, Repeat циклдарын ұйымдастыру.

Циклдағы құрама операторлар For, to, do операторлары.

Бір өлшемді массивтер. Матрицалар.

Функциялар және Процедуралар.

Қатарлар.

Графика.

Графиктік режимде текст шығару процедуралары.

Есептер шығрау.

Содержимое работы - 1 файл

Практикалық жұмыс 1.doc

— 522.00 Кб (Скачать файл)
  1. Бірлік матрица.

    Бас диагонпльдің ьбойындағы элементтері 1-ге тең болатын  диагональдық матрица Бірлік матрица деп аталады.

  1. Үшбұрышты матрица.

    Бас диагональдың бір жағындағы элементтердің барлығы нөлге тең болатын квадраттық матрицаны үшбұрышты матрица деп атайды.

  1. Жолдық матрица.

    Бір ғана жолдан тұратын матрица жолдық матрица деп аталады.

  1. Бағандық матрица.

    Бір ғана бағаннан тұратын матрицаны бағандық матрица деп атайды.

  1. Транспонданған матрица.

    Бір жолдан бір бағаннан тұратын матрица  бір элементті деп атайды. 

       Номерін сақтай отырып жолын бағанға ауыстырғанда берілетін матрица транспондаған матрица деп аталады. Ат; 

1 Есеп: 1-ден 20-ға дейінгі сандар тізбектеліп тұратын массив берілген, оң элементтердің қосындысын есептейтін программа құрыңыз. 

       Program Ozzy;

       Uses crt;

       Type ms=array [1..20] of real;

       Var a,ms:

              I:integer; 

              S:real;

    Begin

    S:=0;

    For i:=1 to 20 do

    Begin

    Write(‘I-engiz’);

    Readln(A[I]);

    If a[I]>0

    Then S:=s+a[i];

    End;

    Write(‘s=’,s);

    End.  

2 есеп: 1-ден 10-ға дейінгі сандардың көбейтіндісін есептейтін программа құру. 

    Program matrix;

    Uses crt;

    Var  a:array [1..3,1...3] of real;

    I,k:integer;

    Begin

    Writeln(‘matrica elementin engiz’);

    For i:=1 to 3 do

    Readln(a[I,k]);

    Writeln;

    For i:=1 to 3 do

    For k:=1 to 3 do

    Writeln(a[I,k]);

    End. 
     
     
     
     
     
     
     
     
     
     
     

15.06.2011 жыл

№10. Функциялар және Процедуралар. 
 

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

       1. Функциялар өрнек операндалары ретінде қолданыла береді;

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

Функцияның  кұрылымы: 

       FUNCTION Аты(формальды параметрлер:типтері):типі;

       Сипаттамалар  бөлімдері; (*бұл бөлімдер болмауыда  мүмкін*)

       BEGIN  Операторлар бөлімі;

       аты: =( *функция жаңа мән меншіктейді *)    (*функция денесі *)

       END; 

       Функциялар  да процедуралар сияқты шақырылады. Негізгі бағдарламаға жаңа мән беру үшін функция денесінде функцияның идентификаторы кемінде бір мән меншіктеуі тиіс. Шақыру нүктесіне функцияның соңғы меншіктеген нәтижесі жаңа мән болып қайтарылады.

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

       Көмекші бағдарламалардың денесіндегі операторлардың орындалу барысында өзін-өзі шақыру процесі рекурсия деп аталады. Рекурсивті бағдарламаларда көмекші бағдарламаның орындалуы есептеу параметрінің белгілі бір мәнінен бастап тізбектей төменгі деңгейлі мәніне қарай қашан есептің тривиальды нәтижесі алынғанға дейін жүреді. Функцияның әр рекурсивті орындалуында оның алдыңғы айнымалылары бағдарламалық ағым деп аталатын жадта сақталады. Рекурсивті функциялар құрғанда бағдарламалық ағымның шексіз емес екендігін есте ұстаған жөн (егер ағым толып кетсе, бағдарламаның орындалуы үзіліп кетеді). Рекурсияның мысалы ретінде төмендегі N санының факториалын табатын функцияны келтіруге болады: 

       N санынын Факториалын табу үшін  рекурсия кұру мысалы: 

       PROGRAM Recurs;

       VAR N:lnteger; F:Longint;

       FUNCTION Fact(N:lnteger):Longint;

       Begin

       lfN<0 Then Begin Writeln(N-ді дұрыс енгізіңіз');

       Fact:=0 End Else іf N=1 Then

       Fact:=1 Else Fact:=N*Fact(N-1);

       End;

         BEGIN Readln(N);  

       F:=Fact(N); Writeln('FN=',F);

       Readln END. 

       Бұл  бағдарламаның орындалу барысында  негізгі бағдарламадан Fact  функциясы шақырылады. Функцияның денесі N санын 0-мен салыстырудан басталады. Егер сан теріс немесе 0-ге тең болса, онда функция 0-ді меншіктейді де орындалуын тоқтатады. Егер сан 1 -ге тең болса функцияның мәні 1 -ді меншіктейді де орындалуын тоқтатады. Егер санның мәні 1-ден артық болса, онда басқару Fact:=N*Fact(N-1) операторына барады да N-нің мәні 1-ге дейін жеткенше функцияның орындалуы қайталанады(факториалдың тривиальді мәні 1-ге тең болғандықтан N=1). Функция рекурсивті процес тоқтағаннан кейінгі көбейтінді нәтижесін меншіктейді де орындалуын тоқтатады. Мысалы N=5 болғанда Fact функциясы төмендегідей орындалады:

       N=5; 5>1; Fact=5*Fact(4);

       N=4; 4>1; Fact(4):=4*Fact(3);

       N=3; 3>1; Fact(3):=3*Fact(2);

       N=2; 2>1; Fact(2):=2*Fact(1);

       N=1; 1=1; Fact(1):=1; 

Program mys10_2;

     var a1,b1,c1,a2,b2,c2,a3,b3,c3:real;

     var max1,max2,max3,min1,min2,min3,max4,min4,max5,min5:real;

   procedure maxmin(x,y,z:real; var max,min:real);

   begin

     if (x>=y) and (x>=z) then max:=x;

     if (x<=y) and (x<=z) then min:=x;

     if (y>=x) and (y>=z) then max:=y;

     if (y<=x) and (y<=z) then min:=y;

     if (z>=x) and (z>=y) then max:=z;

     if (z<=x) and (z<=y) then min:=z;

   end;

begin   write(‘a1,b1,c1-ді енгіз:’);readln(a1,b1,c1);

             write(‘a2,b2,c2-ні енгіз:’);readln(a2,b2,c2);

             write(‘a3,b3,c3-ті енгіз:’);readln(a3,b3,c3);

             maxmin(a1,b1,c1,max1,min1);

             maxmin(a2,b2,c2,max2,min2);

             maxmin(a3,b3,c3,max3,min3);

             maxmin(max1,max2,max3,max4,min4);

             maxmin(min1,min2,min3,max5,min5);

    writeln(‘1-үштіктің ең үлкені-‘,max1,’ең кішісі-‘,min1);

    writeln(‘2-үштіктің ең үлкені-‘,max2,’ең кішісі-‘,min2);

    writeln(‘3-үштіктің ең үлкені-‘,max3,’ең кішісі-‘,min3);

    writeln(‘Үлкендерінің ең үлкені-‘,max4,’ең кішісі-‘,min4);

    writeln(‘Кішілерінің ең үлкені-‘,max5,’ең кішісі-‘,min5);

end. 
 

1) Екі үшбұрыштың төбелерінің координаттары берілген. Олардың қайсысының ауданы үлкен екенін анықтаңыз. Ауданды координаты бойынша есептеуді функция арқылы өрнектеңіз.

program e10_3;

var x1,y1,x2,y2,x3,y3,s1,s2: real;

function s(x1,y1,x2,y2,x3,y3:real):real;

var a,b,c,p:real;

begin

        a:=sqrt(sqr(x1-x2)+sqr(y1-y2));

        b:=sqrt(sqr(x1-x3)+sqr(y1-y3));

        c:=sqrt(sqr(x2-x3)+sqr(y2-y3));

        p:=(a+b+c)/2;

        s:=sqrt(p*(p-a)*(p-b)*(p-c))

end;

begin

writeln(‘1-үшбұрыш коодинаттары: x1,y1,x2,y2,x3,y3 енгізіңіз:’); read(x1,y1,x2,y2,x3,y3);

        s1:=s(x1,y1,x2,y2,x3,y3);

writeln(‘2-үшбұрыш коодинаттары: x4,y4,x5,y5,x6,y6 енгізіңіз:’); read(x1,y1,x2,y2,x3,y3);

        s2:=s(x1,y1,x2,y2,x3,y3);

        if s1>s2 then write(‘1-ші 2-ден үлкен‘) else

            if s1=s2 then write(‘олар тең‘) else

                write(‘2-ші 1-ден үлкен‘)

end. 
 
 
 

16.06.2011 жыл. 

№11. Қатарлар. 

       Бағдарламаларда  кездесетін әр түрлі символдардан тұратын тізбектерді жолдық қатарлар деп атайды. Өрнектерде жолдық қатарлар апострофқа алынып жазылады.

       Turbo Pascal-да жолдық қатарларға компьютердің жадынан 0 байттан 255 байтқа дейін орын беріледі(жолдық қатар ұзындығына - 255 символ, ұзындықтың мәніне - 1 символ).

       Жолдық  қатарлардан тұратын идентификаторлар String типі арқылы сипатталады. Идентификатордың типінен кейін тік жақшаның ішінде осы идентификатордың ұзындығының мәні неше символдан тұруы мүмкін екені көрсетіліп кетеді. Егер бұл мән көрсетілмесе, онда жолдық қатар ұзындығына компьютердің жадынан 255 символға дейін орын беріледі. Жолдық қатарлы идентификаторларды типтер бөлімінде (ТҮРЕ) немесе бірден айнымалылар бөлімінде сипаттауға болады. Сонымен қатар бағдарламалауда жолдық қатарлар тұрақты шамалар ретінде де қолданылады (таңдау селекторы тұрақтысынан басқа).

       Жолдық  қаталардың сипатталу  мысалдары:

       PROGRAM Katarlar;

       CONST S='Кайсар';    {S тұрақтысы     Кайсар тіркесіне тең}

       TYPE Ai=String[10];

       VAR X:String[17];  {X айнымалысының ұзындығы 17 символға дейін}

       A: String[6J; {A айнымалысының ұзындығы 6 символға дейін}

       5: String;     {Б айнымалысының ұзындығы 255 символға дейін}

       C:Ai;     {Сайнымалысының ұзындығы 10 символға дейін} 

       Жолдық  өрнектер мен амалдар.

       Программада кездесетін әртүрлі символдардан тұратын  тізбектерді жолдық қатар деп аталады. Өрнектерде жолдық қатарлар опострофқа алынып жазылады. ТР-да жолдық қатарларға компьютердің жадынан 0-ден 255 байтқа  дейін орын бөлінеді. Операндалары жолдық қатар болып табылатын өрнектерді жолдық өрнектердепатайды. Идентификаторларға жолдық айнымалылардың мәнін беру үшін меншіктеу операторы қолданылады. Егер меншіктеу операторы орындалғанда, символдар саны сипаттамалар бөлімінде көрсетілген шамадан асып кетсе, онда идентификатор қатардың сол жағынан бастап көрсетілген шамаға тең болатын символдарды ғана меншіктейді, ал оң жақтағы артық символдар алынып қалады.

       …….

       Var X:string[2];

       Begin X:=’Aizhan’;      {X-ке  ‘Ai’  тіркесі ғана шығады}

       Writeln (X);

       …….

       Жолдық  қатарлармен біріктіру және салыстыру  амалдарын орындауға болады. Біріктіру амалы бірнеше жолдық қатарды біріктіріп шығару үшін қолданылады. Біріктірілетін жолдық қатардың ұзындығы 255-тен аспауы тиіс. Мысалы:

       А:='Менің'; В:='Қазақстанымның';

       Writeln(A+' '+В)     {МеніңҚазақстанымның - тіркесі шығады}

       X:='Тәуелсіздігіне';

       Ү:='15 жыл';

       Z:=X+' '+Y;     {Z Тәуелсіздігіне 15 жыл - тіркесін меншіктейді}

       Writeln(Z); {де, осы тіркесті экранға шығарады} 

       Жолдық  қатарларды салыстыру амалы екі  жолдық қатарды салыстыру үшін қолданылады. Қатарларды салыстыру солдан оңға қарай ең бірінші кездесетін бірдей емес символға дейін жүргізіледі. Егер қай жолдық қатардың бірдей емес символының ақпарат (информация) алмастыру стандартты кестесіндегі нөмірі үлкен болса, сол жолдық қатар үлкен деп есептеледі. Егер жолдық қатарлардың ұзындығы мен барлық символдары сәйкес келсе, олар тең деп есептеледі. Ал егер жолдық қатарлардың ұзындықтары әртүрлі болып, ал символдары сәйкес болып келсе, онда үлкені болып ұзындығы үлкен жолдық қатар есептеледі. Жолдық қатарлардың салыстыру амалдарының нәтижесі әрқашан бульдік тип болады. 

Информация о работе Практикалык жумыс