Автор работы: Пользователь скрыл имя, 23 Сентября 2013 в 10:40, контрольная работа
Қазіргі кезде 3500-ден жоғары әр түрлі программалау тілдері бар және осылардың ішінен шектелген саны ғана программалық бөлімді құруға жаппай қолданылады. Программалау тілдерінің саны көп болуына байланысты олардың біршене классификациясы бар. Оның ішінде негізгі 2 түрге: фукционалдық мәніне (қызметі) және қолданылатын программалау технологиясына байланысты бөлінеді.
Кіріспе
Қазіргі кезде 3500-ден жоғары
әр түрлі программалау тілдері бар
және осылардың ішінен шектелген
саны ғана программалық бөлімді құруға
жаппай қолданылады. Программалау тілдерінің
саны көп болуына байланысты олардың біршене
классификациясы бар. Оның ішінде негізгі
2 түрге: фукционалдық мәніне (қызметі)
және қолданылатын программалау технологиясына
байланысты бөлінеді. Программалау тілдері
фукнционалдық мәніне байланысты 4 үлкен
классқа бөлінеді:
1)программалауға үйретуші;
2)жалпы мәнді;
3)проблемалық-бағытталған;
4)параллель программалаушы.
Қазіргі жоғары деңгейлі тілдерді осы
классикацияға сәйкес қарастырамыз.
Программалауға үйретуші тілдер қатарына
жататын жоғарғы деңгейлі тілдердің негізгілері
Logo, Basic және Pascal. Logo тілі 60-шы жылдардың
аяғында С.Пейперттің басшылығымен құрылды
және ЭЕМ жаңа қолданушыларға, балаларға
программалаудың негізін үйретуге бағытталған.
Үйретуге арналған жоғары деңгейлі тілдердің
ішіндегі кең тарағаны 1965 жылы Д.Кемени
мен Т.Курц құрған Basic тілі. Дербес компьютерлерге
бірінші қолданылған жоғарғы деңгейлі
тіл және операциялық ортасы – Basic тілі.
60-жылдардың ортасынан бастап мамандар
арасында құрылымдық программалау мәселесі
көтеріле бастады. 1971 жылы Н.Вирт құрылымдық
технологияға үйретуші Pascal тілін құрды.
Жалпы мәнді жоғары деңгейлі тілдер қатарына
әр түрлі класс есептерін тиімді программалауға
бағытталған тілдер жатады. Бұл классқа
жататын тілдердің негізгілері C, Modula,
Ada тілдері. Бұл тілдердің негізі 1966 жылы
құрылған, ғылыми, пәндік облыстағы есептерді
программалауға мүмкіндік беретін PL/1
тілі. PL/1 тілі ЖС ЭЕМ сериялы модельдерде
кеңінен қолданылды. Си тілін 1972 жылы Д.Ритчи
құрды және Unix операциялық жүйесі осы
тілде жазылды. Си тілі ассемблер тілінің
де және жоғары деңгейлі тілдің де мүмкіндіктерін
қамтамасыз ететін болғандықтан орта
деңгейлі тіл деп атайды. Pascal тілінің идеологиясын
тарату мақсатымен Н.Вирт 1980 жылы Modula–2
тілін құрды. Бұл программалау тілінің
негізі – программа бір-біріне тәуелсіз
модульдерден тұрады.
1978 жылы қазіргі АҚШ-та әскери қаруды басқаруға
қолданылатын қосымшаларды программалуға
арналған Ada тілі құрылды. Ada тілі құрылымды
программалау тілі болып табылады және
параллель программалау мүмкіндіктерін
қамтамасыз етеді.
Компьютер белгілі бір есептерді шешу
үшін адам тарапынан сол есепті қандай
жолмен және қалай шығару керектігі туралы
тапсырма алуы қажет. Бұл тапсырмалар
бір жағынан компьютерге түсінікті
болып жазылуы керек болса, екінші жағынан
тапсырма беруші кісіге де ыңғайлы болғаны жөн. Осындай компьютерлік
тілде жазылған тапсырмалар мен командалар
жинағы бағдарлама деп аталады. Ал бағдарламалық
текстерді жазу үшін пайдаланылатын символдардың
жиынтығы компьютерлік тіл алфавитін
құрайды.
Программалар белгілі
бір мәселені, есепті шешуге арналған.
Есеп шығару барысында компьютерге
бастапқы мәліметтер енгізіледі, оларды
қалай өңделетіндігі
Паскаль тілінде программа жеке - жеке жолдардан тұрады. Оларды теру, түзету арнайы мәтіндік редакторлар атқарылады. Программа алдындағы азат жол немесе бос орын саны өз қалауымызша алынады. Бір қатарда бірнеше команда немесе оператор орналаса алады, олар бір - бірімен нүктелі үтір (;) арқылы ажыратылып жазылады, бірақ бір жолда бір ғана оператор тұрғаны дұрыс, ол түзету жеңіл, әрі оқуға ыңғайлы.
Паскаль тілінде программа үш бөліктен тұрады: тақырып, сипаттау бөлімі және операторлар бөлімі.
Кез келген программаның алғашқы
жолы PROGRAM сөзінен басталатын оның тақырыбынан
тұрады. Одан кейін программаның ішкі
объектілерінің сипаттау бөлімі жазылады.
Бұл бөлім программадағы
Программаның соңғы және негізгі бөлімі операторлар бөлімі – болып табылады. Орындалатын іс - әрекеттер, командалар осы бөлімде орналасады. Ол begin түйінді сөзінен басталып, бірақ атқарылатын операторлар (командалар) тізбегі жеке - жеке жолдарға жазылып біткен соң end түйінді сөзімен аяқталады.
Операторлар бөлімінде командалар ретімен орналасады. Олардың кейбірі шартқа байланысты атқарылса, ал кейбір қайталанатын цикл немесе қосымша программа түрінде орындалады. Операторлар бөлімінде орнатылатын негізгі әрекеттерді қарастырайық.
Деректер - сан мәндері мен мәтін түріндегі сөз тіркесін мән ретінде қабылдай алатын тұрақтылар, айнымалылар т.б. осы тәрізді құрылымдар немесе солардың адрестері.
Дерек енгізу - бастапқы деректерді пернетақтадан, дискіден немесе еңгізу - шығару порттарынан еңгізу арқылы жүзеге асады.
Операциялар немесе амалдар - берілген және есептелген мәндердің меншіктеу, соларды өңдеу, салыстыру операцияларын орындайды.
Шартты түрде атқарьшу белгілі бір көрсетілген шарттың орындалуына байланысты, командалар жиыны атқарылады, әйтпесе олар аттап өтіледі немесе басқа командалар жиыны орындалады.
Цикл - белгілі бір шарттар орындалған жағдайда көрсетілген командалар жиынын бірнеше рет қайталанып атқарылады. Қайталау саны бүтін санмен беріледі.
Көмекші программа - алдын ала қандай да бір атаумен атымен атымен аталған командалар тобы. Олар программаның кез келген жерінен оның атауын көрсету арқылы шақырылып атқарыла береді.
Түсініктеме - программа жолдары соңында немесе оның түйінді сөздері арасында қазақша (орысша) түсінік беретін пішінді жақшаға алынып жазылған сөз тіркесітері. Олар программа операторларының орындалуына ешқандай әсер етпейді.
Дәріс деңгейін үздіксіз жоғарлату практикалық, семинарлық, лабараториялық және өзіндік сабақтарды активтендіру студенттің творчестволық қабілеттің дамуы, қажетті дағдылар мен әрекеттер үйрену.
Кафедраның оқыту пәндері комплексті оқулықтар, оқу әдістемелік дайындау, барлық оқу түрлерінің өтілуі бойынша оқу әдістемелік материалдар өндіру, қазіргі заманғы оқыту техникаларын қолдану немесе лабараториялық пайдалану:
Кафедраның жан-жақты қызметін талқылау үшін кафедра мәжілісіне қатысып және оны басқаруға қатысуға:
Өрнектерді Паскаль және Си тілдерінде жазыңыз:
А)17,8·10-7 + lg239 +
Паскаль тілінде жазылуы:
17.8 * exp ((-7) * ln (10)) + exp (2 * ln (ln (10) / ln (39))) + exp (1/8 * ln (abs (13 + 25 * exp (3 * ln (cos (1.5)))))) + exp (4 * ln (3.7));
Cи тілінде жазылуы:
17.8 * pow (10, (-7)) + pow ((ln (39) / ln (10)), 2) + pow ((abs (13 – 25 * pow ((cos (1.5)), 3))), 1/8) + pow (4, (3.7));
Б)
Паскаль тілінде жазылуы:
exp ( 1/5 * ln (exp (3 * ln (1 / sin (sqr (x)))) + PI * ln (sqr (x))) / (5 / 6 + ln (exp (4) + 5 * x) / ln (2)) – exp ((0.77) * ln (sin (15) + 8 / 9));
Cи тілінде жазылуы:
pow ((pow ((1 / sin (pow (x,2))), 3) + M_PI * ln (pow (x, 2))), 1 / 5) / (5 / 6 + ln (exp (4) + 5 * x) / ln (2)) – pow ( (sin (15) + 8 / 9), 0.77).
1 өлшемді массивтер және 2 өлшемді массивтерді қолданып программа құрыңыз:
#include"stdio.h"
#include"conio.h"
#include"time.h"
#include"stdlib.h"
void main()
{
float a[12]; int i;
time_t t;
srand((unsigned) time(&t));
for(i=0;i<12;i++)
{ a[i]=rand()%100-50;
printf("%.0f ",a[i]); }
for(i=0;i<12;i++)
if(a[i]<0) printf("\nTeris element = %.0f, rettik nomeri = %d",a[i],i+1);
getch(); }
Процедура мен функцияны пайдаланып программа құрыңыз.
1-ден 15-ке дейінгі
сандардың квадраттарының
Program A5;
Var PR5 (Var n, k: real; S,J: real);
Begin
S:=0;
n:=1;
J:=0;
k:=32;
while n<=15 do
while k<=47 do
begin
S:=S+sqr(n);
n:=n+1;
J:=J+sqr(k);
k:=k+1;
end;
PR5 (n,S);
PR5 (k,J);
Write (S,J);
End.
Шешімі: S =1240; J=25304.
Жазбалар типін қолданып программа құру.
WITH қосып алу операторы
REKORD түріндегі жазылу мен жұмысты жеңілдету үшін қосып алу операторын қолданамыз. Осы оператордың басты міндеті Ол біраз іс-қимылды жинақтап ықшамдайды. Жалпы түрі.
WITH A DO ST
Мұндағ А – REKORD түріндегі айнымалының аты ST –оператордық іс-қимылдар бөлігі немесе жеке оператор. Бағдарлама жазу кезінде жазылуларды қолданғанда бағдарлама тексті ұзарып кетеді
Қосып алу операторы ST операторы орындалу арқылы жүзеге асады. Осы ST операторының ішкі құрамындағы А аралас түріндегі айнымалының белгілі бір мүшелерінің атауларын көрсету арқылы жұмысты жеңілдетеміз. Мыс жоғары да көрсетілген бағдаламаның үзіндісін өз операторын қолдану арқылы көрсетейік.
WITH A DO ST
With c, туыл. Дерек do
Begin Күн:=18;
Ай:=апрель;
Жыл:=1976;
Мыс: Студенттік топтың құрамының анкеталық дерегін алу керек. Онда туылған жылы, оқуға түскен жылы, соңғы сессияда алған бағалары мен үздік студенттердің аты жөнін көрсету керек.
Program m28 (,);
Type студент=record ф.и.о: packed array [1..10] of char;
Мыс26. А1,...,А20
Program m26 (,);
Type T=array[1..20] of real;
Var A:T; I:integer; S:real;
Begin S:=0;
For I:=1 To 20 do
Begin read (A[I]);
If A[I]>0 Then S:=s+A[I];
End;
Write (s);
End.
Мысалы:.Массивтің ең үлкен максимал мәнін есептеу.
Program m27 (,);
Const M=1; N=20;
Var I, J: integer;
X:array [M...N] of real;
Begin For I:=M to n do
Read (X[I]);
J:=M;
For I:=M+1 TO n do
If X[I]>x[J] Then J:=I;
Writeln (x[I];
End.
Б) Program A5;
Var X1, X2, Z: string;
X1 set of [‘A’,’B’,’C’,’D’];
X2 set of [’A’,’D’,’F’];
X3 set of [‘C’, ‘D’, ‘A’,]
Z=X1+X2+X3
Write (F);
End.
Программа құрылымы. Қарапайым программа. Read Write операторлары
1. программа тақырыбы;
2. айнымалылар мен типтер бөлімі;
3. таңбалар (белгі) бөлімі;
4. тұрақтылар бөлімі;
5. процедуралар мен функциялар бөлімі;
6. программа денесі бөлімі;
Программа тақырыбы
қызметші сөздерден, латын
тұратын программа атынан тұрады. Программа тақырыбынан
кейін әтірлі нүкте қойылады. Түсініктемелер жәй жақша ( * *)
немесе фигуралық жақша { }
Ішінде жазылады.
Мысалы:
PROGRAM SUMMA;
{Y=2*X+5*X+8*X қатарының қосындысы}
Айнымалылар мен типтер бөлімінде (VAR, TYPE) иденфикаторлар
сипатталады. Кез-келген иденфикатор өзіне тән бір типпен
ғана сипатталады.
Мысалы:
TYPE MAS=ARRAY [1.. 5] of CHAR;
VAR X: INTEGER; T: CHAR;
D: ARRAY [1.. 10] of STRING;
B, C: REAL; S: SINGLE;
V: BOOLEAN; A: MAS; Таңбалар бөлімі LABEL қызметші сөзінен басталады, одан кейін
программада қолданылатын белгілердің тізімі үтір арқылы жазылады,
тізімнің соңында үтірлі нүкте қойылады. Белгі ретінде бүтін сандар
пайдаланылады.Белгі программада оператордың алдында жазылып,
одан қос нүкте арқылы бөлінеді.
Мысалы:
LABEL 1, 2, 5, 10, 15, 20, 30, 40, 50;
... ... ... ... ... ... ....
10: операторлар;
Тұрақтылар бөлімі ( CONST ) тұрақтылар сипатталады, әрбір
тұрақтыларды сипаттаған соң, үтірлі нүкте қойылады.
Тұрақтылар программа орындалу барысында мәндерін өзгертпейді.
Мысалы:
CONST А=`GOD`;
CONST PI=3.14; D=250
Процедуралар ( PROCEDURE ) мен функциялар ( FUNCTION )