Оқулық Қазақстан Республикасы Білім жəне ғылым министрлігі бекіткен Алматы, 2011 1



бет67/210
Дата06.01.2022
өлшемі4,42 Mb.
#16437
түріОқулық
1   ...   63   64   65   66   67   68   69   70   ...   210
Байланысты:
boribaev-algoritmdeu

130



6.3-сурет. Жиым элементтерін циклде енгізу
Көлемі үлкен матрицаны немесе бір өлшемді жиымдар эле-менттерін жеке-жеке жолдармен енгізіп шығарған ыңғайлы.

Мысалы:
Var a:array[1..5, 1..7] of real; {5 жол, əр жолда 7 элементі бар матрица}


Begin
for i:=1 to 5 do {a1, a2, a3, a4, a5 жиымының жолдарын енгізетін цикл}
for j:=1 to 7 do {i -ші жолдың элементтерін енгізетін цикл:}
Read(a[i,j]); {ai,1, ai,2, ai,3, ai,4, ai,5, ai,6, ai,7}
ReadLn; {енгізу буферін тазалау} end; ...
6.1-мысал. А(5) жиымының ең үлкен элементін жəне оның нөмірін анықтайтын программа жазыңыз.
Алдымен жиым элементтерін енгізу керек. Бұл операцияны орындау үшін қайталау саны белгілі циклді қолданымыз.

Ең үлкен элементті табу үшін: алдымен жиымның бірінші элементін ең үлкен элемент ретінде аmах айнымалысына мен-шіктейміз де, осы элементтің нөмірін imax деп белгілейміз. Содан кейін жиым элементтерін жеке-жеке аmах айнымалы-сының мəнімен салыстырып шығамыз. Егер салыстырып отыр-ған элемент аmах айнымалысының мəнінен үлкен болса, оны ең үлкен элемент ретінде аmах айнымалысында меншіктейміз. Элемент нөмірін imax айнымалысына жазамыз (6.4-сурет).




131

Жиым элементтерін тізбектеп қарап шығу үшін қайталану саны белгілі циклді пайдаланамыз. Цикл параметрі 2-ден 5-ке дейін өзгереді, себебі бірінші элементті біз ең үлкен элемент ретінде алдық. Барлық элементтерді қарап шығып, біз жиымның ең үлкен элементін жəне оның нөмірін анықтаймыз. Бұдан кейін экранға бастапқы жиымды жəне оның ең үлкен элементі мен оның нөмірін шығару керек.
6.4-суретте программа алгоритмінің схемасы берілген. Жиым элементтерін енгізу-шығару операциялары ұқсас екендігі ал-горитм схемасында параметрлі цикл (модификатор) блогынан байқалып тұр.
Төменде программа мəтіні келтірілген.
Program ex;
Var a:array[1..5] of real;
amax:real; i,imax:byte;
Begin {Жиым элементтерін енгізуге сұраныс} WriteLn(‘5 сан енгізіңіз:’); {жиым элементтерін

енгізу}
for i:=1 to 5 do Read(a[i]); ReadLn; {жиымның ең үлкен элементін іздеу} amax:=a[1]; imax:=1; for i:=2 to 5 do


if a[i]>amax then
begin
amax:=a[i];
imax:=i;
end;
{жиымды шығару} WriteLn(‘Бастапқы мəндер:’);
for i:=1 to 5 do Write(a[i]:5:2); WriteLn;

{нəтижені шығару}



WriteLn(‘Ең үлкен элемент= ‘,amax:5:2,’, оның
нөмірі= ‘,imax);
End.




Достарыңызбен бөлісу:
1   ...   63   64   65   66   67   68   69   70   ...   210




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет