Құрастырған: оқытушы Нұрғазина Б.Қ.
Информатика және ақпараттық жүйелер кафедрасы
050604- Физика, 050601 – Математика мамандықтары
студенттеріне арналған Программалау пәнінен
тәжірибелік және зертханалық жұмыстарға
ӘДІСТЕМЕЛІК НҰСҚАУЛАР
Кафедраның отырысында қарастырылған
«___»_____200 _ж. №__ хаттама
Кафедра меңгерушісі _______________Ж.К.Нұрбекова
МФ және АТ факультетінің әдістемелік кеңесінде құпталған
«__»_____200__ж. №____ хаттама
ӘК төрайымы ___________________ А.З.Даутова
Зертханалық жұмыстардың мақсаты:
1. Студенттерге бағдарламалау тілінің негізгі құрылымдарын үйрету, командалар мен операторлардың қызметі мен пайдалану ережелерімен таныстыру.
2. Студенттердің алгоритмдік ойлау дағдыларын қалыптасытру.
3. Өз бетімен оқып-үйренуге, талдауға, бағдарлама бойынша нәтижені анықтауға үйрету.
4. Есепке алгоритмдер мен бағдарламалар құру, олардың тиімділерін таңдау және нәтижелерге талдау жасау әдістерін меңгерту.
Зертханалық жұмыстардың тәртібі:
1. Жұмыстың теориялық бөлігімен танысады.
2. Берілген есептің алгоритмімен танысады.
3. Бағдарлама тексін қарап, оның құрылымына талдау жасайды. Ондағы командалардың пайдаланылуын негіздейді.
4. Алгоритмнің орындалу тәртібін ауызша түсіндіреді.
5. Қандай да бір мәндермен, бағдарламаның орындалу протоколын толтырып, нәтижелерді компьютерсіз анықтайды. Пайдаланылатын мәндер бағдарламадағы барлық жағдайларды қамту қажет.
6. Бағдарламаны компьютерде орындап, 5-пунктте анықталған нәтижелердің дұрыстығын тексереді.
Зертханалық жұмыстардың тізімі:
№1 жұмыс. Есептерді алгоритмдеудің негіздері
№1 зертханалық жұмыс. Паскаль ортасы. Бағдарламаның құрылымы.
Мақсаты: Рascal-дың жұмыс ортасымен танысу, негізгі дағдыларын қалыптастыру.
Теориялық бөлім
1.Паскаль тiлiн жұмысқа қосу. Жұмыс столындағы Паскальға сәйкес жарлық жұмысқа қосылады.
2. Менюмен жұмыс. F10 клавишасы менюдi жұмысқа қосады. Меню жұмысқа қосылған соң, ерекше түске боялады. Команданы жұмысқа қосуды тездетуге болады. Ол үшiн меню жолындағы белгiленген әрiпке сәйкес клавиша басылады. Alt клавишасы мен белгiленген әрiптi басса, оған сәйкес команда iске қосылады. Менюден шығу үшiн Ecs клавишасы басылады.
Меню пункттеріне сипаттама
1. File
Open-кеңейтілуі .pas файлды ашады.
New-жаңа терезе ашады.
Save (F2)-файлды өз атымен сол орнына сақтайды.
Save as-файлды басқа атпен, басқа каталогқа жазуға болады.
Change dir- ағымдағы (жұмыс істеп отырған) каталогты өзгертуге мүмкіндік береді.
Print-ағымдағы терезедегі ақпаратты принтерге шығарады.
Printer Setup-принтер орнату.
DOS shell- DOS режиміне шығады. ехіt командасымен Паскаль ортасына оралады.
Exit (Alt-X)-Паскальмен жұмысты аяқтайды. Файлды сақтау қажет.
Терезелермен жұмыс iстеу. Терезе дегенiмiз - бiздiң барлық iс-әрекетiмiздi жүзеге асыратын экранның бөлiгi. Оның размерiн өзгертуге, орнын ауыстыруға, ашуға, жабуға болады. Паскаль ортасында бiрнеше терезенi қатар ашуға, әрбiреуiмен жеке жұмыс жасауға, олардың арасында информация алмастыруға болады. Жұмыс iстеп отырған терезе белсендi (активтi) деп аталады. Белсендi терезе қос рамкалы және онда жабу кнопкасы, масштабтау кнопкасы, терезенi жылжыту кнопкасы, терезенiң өлшемiн өзгерту бұрышы болады.
Меню- WINDOW
Tile-терезелерді ретпен орналастыру.
Cascade-терезелерді каскадпен орналастыру.
Close all-барлық терезелерді жабу.
Size/Move-терезенің өлшемін өзгерту (Shift+стрелкалар).
Zoom-терезені үлкейту немесе кішірейту.
Next - терезелерді ретпен қарау.
Close (Alt + F3)-белсенді терезені жабу.
Previous- терезелерді кері ретпен қарау.
List-барлық ашық терезелер тізімін көрсетеді.
Alt + № - № номерлi терезеге өту. Alt клавишасы мен керек терезенiң номерi қатар басылады.
Alt + F5 - Window/ User Screen - Бағдарламаны орындау нәтижесi бар пайдаланушы терезесі шығады
Тапсырма.
1.Паскальді жұмысқа қос.
2. Паскаль ортасында 5 терезе ашып, әрбіреуін сәйкесінше tereze1, tereze2, tereze3, tereze4, tereze5 деген атпен сақта.
3. Терезелерді ретпен орналастыр.
4. Терезелерді каскадпен орналастыр да, мына ақпаратты тер.
1-терезеге: {фамилияң мен атыңды}
2-терезеге: program p_orta;
const k=100;
3-терезеге: label m1,m2;
Begin clrscr; writeln(‘Salem!’); writeln(‘ Men Pascalmyn!’);
end.
4-терезеге: uses crt;
Осы ақпараттарды терген соң, әрбір терезені сақта.
5. Терезелерді ретімен, одан соң кері ретпен қарап, жазылған ақпаратты тексер.
6. 2-терезеге өтіп, мына жазуды қосып, сақта.
type kun=1..31;
7. Барлық ашық терезелердің тізімін шығар. 4-терезеге өтіп, мына жазуды қосып, сақта.
var k:kun; a:byte;
8. 1 және 2-терезелер экранға қатар сиятындай етіп, өлшемдерін өзгерт.
2. Меню-EDIT
Undo (Alt+BkSp)- алдыңғы әрекетті жояды.
Redo – Undoдағы әрекетті қайтарады.
Cut (Shift+Del) –белгіленген фрагментті жойып, буферге алады.
Copy (Ctrl+Ins) - белгіленген фрагментті буферге көшіреді.
Paste (Shift+Ins) – буфердегі фрагментті курсордың орнына қояды.
Clear (Ctrl+Del) – фрагментті жояды.
Show Clipboard- буфердегі ақпаратты көрсетеді.
Тапсырма.
9. 1,2,3,4 терезелердегі ақпараттарды ретімен 5-терезеге біріктіріп, мына тексті құрастыр.
{фамилияң мен атың}
program p_orta;
const k=100;
label m1,m2;
begin
clrscr;
writeln(‘Salem!’); writeln(‘ Men Pascalmyn!’);
end.
uses crt;
Тексті сол атымен сақта.
3.Меню- SEARCH-текст фрагментін және қате табылған орынды іздейді.
4. Меню-RUN
RUN (Ctrl+F9)– бағдарламаны орындайды.
5. Меню- COMPILE
Compile – белсенді терезедегі файлды компиляциялайды.
Make – негізгі бағдарламаға кіретін модульдер қайтадан компиляцияланадыда, орындалушы файлға біріктіріледі.
Build –алдыңғы пунктке ұқсайды.
Distination memory –орындалушы файл қайда орналасады, дискіде ме, әлде жадыда ма?
Primary file –компиляциялау қай файлдан басталатынын көрсетеді.
6. TOOLS – бағдарламаны жұмысқа қосу
7. OPTIONS –Паскаль ортасына қажетті каталогтардың жолы көрсетіледі.
Бағдарламаны компиляциялау. Бағдарламаны компиляциялау үшiн Alt+F9 клавишалары қатар басылады. Егер текст дұрыс болса, ол жөнiнде хабарлама шығады: Compile Successful: Pres any key
Жұмысты жалғастыру үшiн, кез келген клавишаны басу керек.
Бағдарламаны орындау. Бағдарламаны орындау үшiн, Ctrl+F9 клавишасы басылады, немесе менюден /Run/ Run енгiзiледi.
Тапсырма. 5-терезедегі бағдарламаны орында. Қате туралы хабарлама шықса, төмендегі құрылым бойынша бағдарламаны түзет. Uses бөлімін орнына келтір.
Паскаль тiлiндегi программаның құрылымы
program < идентификатор >; - программаның аты
uses < идентификатор >; - библиотекалық модульдер тiзiмi
label . . . белгілерді сипаттау.
const . . . тұрақтыларды сипаттау.
type . . . типтердi сипаттау.
var . . . айнымалыларды сипаттау.
begin
операторлар программа денесi
еnd.
Бағдарламаны орындап, пайдаланушы терезесінен нәтижені қара.
Орындалушы (кеңейтiлуi .exe) файл жасау. Паскаль тiлiндегi бағдарлама тексiн сақтағанда стандартты .pas деген кеңейтiлу (расширение) берiледi. Бағдарламаны орындалушы файл ретiнде сақтау үшiн, оған .exe кеңейтiлуi берiлу керек. Ол үшiн:
а) жадыға сақтау үшiн: Меню / Compile / Destination / Memory
б) дискiге сақтау үшiн: Меню/Соmpile/Destination/Disk
Memory немесе Disk Enter арқылы таңдалады.
Memory мен Disk-нiң бiреуi таңдап алынған соң, Меню /Compile/ Make енгiзiледi немесе Ғ9 басылады. Орындалушы файл жасалады. Каталогтағы файлдар тiзiмiнде кеңейтiлуi .exe файлы пайда болады.
Тапсырма. Орындалушы (кеңейтiлуi .exe) файл жаса. Каталогты ашып, файлдың жасалғандығын тексер.
6. Жұмысты аяқта.
№2 зертханалық жұмыс. Математикалық функциялардың Паскаль тілінде жазылуы
Мақсаты: Қарапайым және күрделі математикалық өрнектердің Паскаль тілінде жазылуын меңгеру .
Теориялық бөлім
Математикалық өрнектi Паскаль тiлiнде жазу ережелерi:
1.Өрнек бiр жолға тiзбектей жазылады, сондықтан амалдардың орындалу тәртiбiнiң бұзылмауын ескеру керек.
2. Жоғары және төменгi индекстер ереже бойынша жазылады.
3. Функцияның аргументi жақша iшiне алынады.
4. Тригонометриялық функциялардың аргументi градуспен емес, радиан түрiнде (x*PI/180) жазылады.
5. Ашылған және жабылған жақшалар саны тең болады.
6. Математикалық өрнекте дөңгелек жақшалар ғана жазылады.
Дәреженi есептеудiң стандарттық функциясы жоқ. Бiрақ, оны стандарттық функциялар арқылы былайша өрнектеп жазуға болады:
ах: = ехр(х* ln(а)), ( егер а>0 болса ғана).
Сол сияқты, tg(x) = sin(x) / cos(x);
-
Математикада
|
Паскальда
|
Нәтиженiң типi
|
|x|
|
abs(x)
|
бүтiн, нақты
|
x2
|
sqr(x)
|
бүтiн, нақты
|
x
|
sqrt(x)
|
нақты
|
sinx
|
sin(x)
|
нақты
|
cosx
|
cos(x)
|
нақты
|
arctg(x)
|
arctan(x)
|
нақты
|
eх
|
exp(x)
|
нақты
|
lnx
|
ln(x)
|
нақты
|
lgx
|
ln(10)/ln(x)
|
нақты
|
п=3,141592..
|
Pi
|
нақты
|
Жұмыс технологиясы.
1.Паскаль терезесін ашып, мына жолдарды теріңіз.
Program ornek;
uses crt;
var x,y,z,a:real;
begin
clrscr;
x:=
y:=
z:=
writeln(‘z=’,z);
readln;
end.
1 жаттығу
x=5; y=3 мәндерінде өрнегінің мәнін есептеу.
2.Бағдарламадағы мына жолдарды өзгертіңіз.
x:=5;
y:=3;
z:=(sqrt(sqr(x)+2*y)+sin(15*pi/180))/(2*x)
3.Бағдарламаны жұмысқа қосып, нәтижесін қараңыз.
Сұрақтарға жауап беріңіз.
1. (sqrt(sqr(x)+2*y)+sin(15*pi/180)) өрнегі неге жақшаға алынған?
2.15*рі/180 формуласы нені білдіреді ?
2 жаттығу. өрнегінің мәнін есептеу.
4. Z:= жолына мынаны теріңіз:
Z:=abs(abs(x-100)*3/(2*x+ln (y))+2*sin(y)/cos(y))+exp(x+y)/exp(y*ln(x));
5.Бағдарламаны жұмысқа қосып, нәтижесін қараңыз.
Сұрақтар:
3. sin (y)/ cos (y) нені білдіреді?
4. exp (x+y) неге жақшаға алынған? Осы жазуды exp(x)+y деп жазуға бола ма?
3 жаттығу. өрнегінің мәнін есептеу.
Z:= жолына мынаны теріңіз:
Z:=(3*exp(5)*exp(5*ln(y))+ sqrt(sqr(cos(y)+sin(sqr (y))))/exp(2/3*ln(x+y));
Сұрақтар:
5. е5 және у5 екеуінде де дәреже көрсеткіші 5, бірақ жазылуы әр түрлі. Неге?
7 ....sin (sqr(y)))) жолдарында неге 4 рет )))) жақша қойылған?
№3 тақырып Негізгі процедураларға бағытталған алгоритмдік тілдерде программалау.
№3 зертханалық жұмыс. Шығару, енгізу процедуралары
Мақсаты: Экранға әр түрлі хабарлама, нәтиже шығаруды және мәндерді енгізуді үйрену.
Теориялық бөлім
WRITE – айнымалының мәнiн, өрнектiң мәнiн, текстi экранға шығарады.
Жазылу форматы: write(ln) (<параметр>);
Жазылу түрлерi:
writeln (өрнек); – өрнектiң мәнiн экранға шығарады. writeln (sqr(25));
writeln(x); – x айнымалының мәнi шығады.
writeln (‘текст’) – апострофтың iшiндегi текст шығады.
writeln ( өрнек, ’текст’, айнымалылар);
writeln; – бос жол шығарады.
read(ln) – сандық мәндердi, символдарды, жолдарды клавиатурадан енгiзедi.
Жазылу форматы: read(ln)(айнымалылар тiзiмi);
Жазылу түрлерi:
readln(x) – x-тiң мәнi енгiзiледi.
readln(a,b) – a,b мәндерi бос орынмен ажыратылып енгiзiледi.
readln- енгізу клавишасы басылғанын күтеді.
Read процедурасы орындалғанда, айнымалының мәнiн енгiзу үшiн бағдарлама жұмысында кiдiрiс болады. Айнымалының мәнiн оқушы клавиатурадан енгiзедi. Егер read процедурасында айнымалылар тiзiмi көрсетiлсе, онда тiзiмдегi айнымалылардың мәндерi клавиатурадан бос орынмен ажыратылып енгiзiледi. Әрбiр read процедурасынан соң Enter клавишасы басылады.
1 жаттығу. Қадыр Мырзалиевтің «Ана тілі» тақпағының бір шумағын экранға шығару.
1. Бағдарлама тексін теріңіз
program text;
uses crt;
begin
clrscr;
Writeln; Writeln(‘Ана тілі’); Writeln;
Writeln(‘Ана тілің арың бұл,’);
Writeln(‘Ұятың боп тұр бетте.);
Writeln(‘Өзге тілдің бәрін біл,’);
Writeln(‘Өз тіліңді құрметте’); Writeln;
Writeln(‘Қ.Мырзалиев‘); Writeln;
readln;
end.
Бағдарламаны орындап, нәтижесін көріңіз. Экранда орналасуына назар аударыңыз
2. Мына жолдарға өзгерістер енгізіңіздер
Writeln (‘Ана тілі’:20);
Writeln (‘К. Мырзалиев’:30);
Бағдарламаны орындап, нәтижесін көріңіз. Қандай айырмашылық бар? 20 және 30 цифрларын өзгертіңіз. Нәтижесіне түсініктеме беріңіз.
2 жаттығу. Жаңа терезеде мына жолдарды теріңіз
uses crt;
var x,y,a,b: byte;
begin
clrscr; {1}
readln(x); {2}
y:=10; {3}
writeln(x); {4}
writeln(x+y); {5}
readln;
end.
Орындап нәтижені қараңыз да, дәптерге жазып алыңыз
3. Мына {4} және {5} жолдарды өзгертіңіз:
Writeln (‘х=’, х);
Writeln (‘у+х=’, х+у);
Орындап нәтижені қараңыз. Қандай өзгеріс бар? Қорытынды жасаңыз.
4. Мына өзгерістерді енгізіңіз. {3} жолдан соң мына жолды теріңіз:
а:= х*у; {3а}
{4}, {5}жолдарды өзгертіңіз: writeln (x,’*’, y, ‘=’ , a); {4}
Writeln (‘x=’, x:10, ‘y=’;10, ‘a=’,:10, a:10); {5}
Орындап нәтижені қараңыз. Қандай өзгеріс бар? Қорытынды жасаңыз. {5}жолдағы : белгісі қандай қызмет атқарады?
3 жаттығу. Жаңа терезеде жазыңыз:
uses crt;
var x,y,a,b:real; s:string;
begin
clrscr; {1}
x:=100; y:=3; {2}
а:=х/у;
writeln (‘a=’;a); {3}
writeln (‘a=’:10);
writeln (‘a=’:10:5); {4}
writeln(‘a=’:10:2);
writeln(‘a=’:10:0);
writeln(‘a=’:0:5); {5}
writeln(‘a=’:0:2); {6}
writeln(‘a=’:0:0);
readln;
end.
Бағдарламаны орындап, нәтижесін қараңыз. Экранға шығудың қандай айырмашылықтары бар? Санның бөлшек бөлігіндегі цифрлар санының өзгеруі неге байланысты?
4 жаттығу. Жаңа терезеде жазыңыз:
uses crt;
var x,y,a,b:real; s:string;
begin
clrscr; {1}
readln(x,y); а:=х/у; {2}
writeln (‘x=’;x); {3}
writeln (‘y=’,y);
writeln (‘a=’,a); {4}
readln; end.
Бағдарламаны орындаңыз. Экранға курсор шығады. Бос орынмен ажыратып екі сан енгізіңіз. Экранға шыққан х пен у-тің мәндері енгізілген сандарға ие болды ма?
Бағдарламаны бірнеше рет орындап, нәтижесін жазып алыңыз.
Сұрақ: Readln қандай қызмет атқарады? Ол орындалғанда экран қандай түрде болады? Курсордың орналасуы қалай?
5 жаттығу. Диалогтық программа құру
uses crt;
var s, a, b:string; x,y,z:byte;
begin
clrscr; {1}
Writeln(‘Сәлем!’);
Write(‘Атың кім?’); Readln(s); Writeln;
Write(‘Екі сан енгіз ’); readln(x,y);
Write(‘Бір сан енгіз ’); readln(z); Writeln;
Writeln(‘Үш санның қосындысы = ’, x+y+z); Writeln;
Writeln(‘Сау бол! ’,s); Writeln;
readln; end.
Cұрақ: Write және Writeln айырмашылығы неде?
Өрнектерді бағдарламалау тілінде жазып есептеңіз.
1. p = Жауабы: 402.1339
2. k=- Жауабы: 62.10672
3. c= Жауабы: 3472.599
4. d= Жауабы: 0.0406535
Пайдаланылатын әдебиет: [4], 5-24 беттер;
№4 зертханалық жұмыс Тармақты алгоритмдер. Шарттық оператор
Достарыңызбен бөлісу: |