186
4) while do цикл операторында while циклының құрылымы қай уақытқа дейін
орындала береді?
Глоссарий:
1. Цикл – бір немесе бірнеше әрекеттер тізбегінің әртүрлі мәндер үшін бірнеше
рет қайталануы.
2. Цикл параметрі- (әдістемелік нұсқауды қара)
3. Іштестірілген циклдар – бірінің денесінде бірі орналасқан циклдар.
4. Дейін-циклы, Әзір-Циклы- алгоритмнің базалық структуралары.
Әдебиеттер:
[1-6],[13],[15].
187
ЛАБОРАТОРИЯЛЫҚ ЖҰМЫС №5
Тақырыбы: МАССИВ. МАССИВТІ ӨҢДЕУ.
Мақсаты: С/С++ тілінде бір өлшемді және екі өлшемді массивтерді енгізу,
шығару, өңдеуді ұйымдастыру. Массив көмегімен қолданбалы есептерді шешу.
Қажетті материалдар мен жабдықтар: ДК, С/С++ тілінің IDE ортасы,
лабораториялық жұмысты орындауға арналған әдістемелік нұсқаулар.
Лабораториялық жұмыстың мазмұны және орындалу реті:
1. С/С ++ тілінде массивтерді сипаттау және өңдеуге қатысты әдістемелік
нұсқау – матриалдарды алдын ала танысып меңгеру.
2. Ұсынылған мысалды орындау және талқылау.
3. Өзіндік жеке тапсырмалардың оқытушы ұсынған бір және екі өлшемді
массивтерді өңдеу тапсырмаларының нұсқасын орындау.
4. Лабораториялық жұмыстың есебін (отчет) дайындап тапсыру.
Әдістемелік нұсқау:
Мысалы:
а) Есептің берілуі: Аптаның жеті күніндегі таңғы, түскі және кешкі уақыттағы
температура мәні берілген. Аптаның ең жылы күнінің температура көрсеткішін
табыңыз.
ә) Есептің математикалық моделі: Бұл есепті шығару барысында екі өлшемді
массивті қолданамыз, яғни apta[n][m] өлшемді массив аламыз. Массив жолы
ретінде апта күндерін, ал бағаны ретінде уақыт мезгілдерін (таңғы, түскі және
кешкі) аламыз. Аптаның әрбір күні apta[n][m] массивінің бағандарына сәйкес
келетіндіктен, аптаның әрбір күніндегі температураның орташа мәнін s[n]
өлшемді массивке меншіктеп, осы массивтің ең үлкен мәнін, яғни аптаның ең
жылы күнінің температура көрсеткішін баспаға шығарамыз. Программаның
мүмкін мәндері төменде көрсетілген:
apta[n][m] 18 20 19 20 21 18 17
20 21 20 22 23 20 19
17 19 18 20 21 17 16
s[n] 18,3 20 19 20,7 21,7 18,3 17,3
Аптаның ең жылы күнінің температура көрсеткіші- 21.7градус
б) Есеептің шығарылу алгоритмі:
в) Есептің программасы:
188
С – дегі нұсқасы:
С++тегі нұсқасы:
#include
#include
#include
#define n 7
#define m 3
void main()
{ clrscr();
int apta[n][m], i,j;
float s[n], max;
printf (“ \n Апта күндеріндегі
таңертеңгі,
түскі
және
кешкі
уақыттағы температура мәндерін
енгізіңіз.”);
for (i=0; ifor (j=0; iscanf (“%i”, &apta[i][j]);
}
for (i=0; is[i] = 0;
for (j=0; js[i] = (s[i] + apta[i][j])/n;
}
max=s[0];
for (i=0; iif (s[i]>max) max=s[i];
printf (“\n Аптаның ең жылы күнінің
температура көрсеткіші -”);
printf (“\n %f”, max);
getch();
}
#include
#include
#include
#include
#define n 7
#define m 3
void main()
{ clrscr();
int apta[n][m], i,j;
float s[n], max;
cout<<
“\n
Апта
күндеріндегі
таңертеңгі, түскі және кешкі уақыттағы
температура мәндерін енгізіңіз.”;
for (i=0; ifor (j=0; icin >> apta[i][j]);
}
for (i=0; is[i] = 0;
for (j=0; js[i] = (s[i] + apta[i][j])/n;
}
max= s[0];
for (i=0; iif (s[i]>max) max=s[i];
cout << “\n Аптаның ең жылы күнінің
температура көрсеткіші -”;
cout << “\n” << max;
getch();
}
Өзіндік жұмыс тапсырмалары:
Өз бетінше орындайтын тапсырмаларға түсініктеме
Берілген есепті талдап, оның математикалық моделін құрыңыз. Есеп
программасын құрғанда оның С және С++ тілдеріндегі нұсқалары көрсетілуі
керек.
а) Жеке тапсырмалар: (Бір өлшемді массив үшін)
1) Бүтін сандардан тұратын бір өлшемді массив берілген. Оның
элементтерін кему ретімен орналастыру керек.
189
2) Клавиатурадан енгізілген 5 бүтін саннан тұратын бір өлшемді массив
берілген. Осы массивке оның нөлдік емес элементтерін жалғастыра
енгізетін программа жазу керек.
3) Топ студенттерінің ішіндегі бойы ең үлкен және ең кіші студенттің бой
көрсеткішің экранға шығаратын программа құрыңыз.
4) Клавиатурадан енгізілген сан берілген массивте бар жоғын анықтайтын
программа құрыңыз. Массив программа орындалуы барысында енгізілуі
керек.
5) Клавиатурадан енгізілген сан берілген массивте неше рет кездесетінін
анықтайтын программа құрыңыз.
6) Массивте бірдей элементтердің барын анықтайтын программа жазу
керек.
7) Сыныптағы оқушылардың ішінен бойы орташа бой көрсеткішінен асатын
оқушылардың бойларының ұзындығын шығаратын программа жазыңыз.
8) Бүтін сандардан тұратын массив берілген. Осы массивтегі 5 – ке еселі
элементтердің қосындысын табу керек.
9) Қала дүкендеріндегі сүттің бағалары берілген. Қала дүкендері бойынша
сүттің орташа бағасы нормадан аса ма, соны тексеріңіз. Нормалы бағаны
қолданушы өзі енгізеді.
10) Қала дүкендеріндегі еттің бағалары берілген. Қала дүкендері
бойынша орташа бағаны анықтап, егер орташа баға нормадан асатын
болса, оны нормалы бағаға ауыстыру керек. Нормалы бағаны қолданушы
өзі енгізеді.
11) Массив берілген. Оның алғашқы элементі мен соңғы элементінің
орнын ауыстыратын программа құрыңыз.
12) Екі массив берілген. Осы екі массивтің элементтерінің қосындысын
экранға шығаратын программа құрыңыз.
13) Студенттің барлық оқу жылы бойынша «Математика» пәнінен алған
бағалары берілген. Оның осы пән бойынша қорытынды бағасын
есептейтін программа құрыңыз.
14) Студенттің 1 – курстағы қысқы және жазғы сессиясының бағалары
берілген. Оның үлгерімі қалай өзгергенін есептейтін программа жазыңыз.
Егер оның жазғы сессиядағы үлгерімі қысқы сессияға қарағанда артса,
онда “артты” деген, ал керісінше болса, “төмендеді” деген хабарландыру
шығуы керек.
15) Бір сыныптағы оқушылардың білімінің орташа балы берілген. Озат
оқушылар сыныптың неше пайызын құрайтынын есептейтін программа
құрыңыз.
16) Массив берілген. Оның алғашқы және соңғы екі элементінің
қосындысын есептейтін программа құрыңыз.
17) Оқушылар бой көрсеткішінен тәуелсіз екі қатарлы сапқа тұрғызылды.
Мұғалім бұйрығымен саптың бірінші қатарында тұрғандар бойларының
өсу ретімен, ал саптың екінші қатарында тұрғандар бойларының кему
ретімен тұруының программасын жазыңыз.
Достарыңызбен бөлісу: |