Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Аисд шпор.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.14 Mб
Скачать
  1. Алгоритмнің қандай қасиеттері бар, оларды калай түсінесіз?

  2. Табиғи тілде алгоритм қадамдарын сипаттауға қандай кызметші сөздер колданылады және олардың мағыналары қандай?

  3. Алгоритмді сипаттаудың қандай әдістерін білесіз?

  4. Алгоритм схемасын сызуға қандай белгілеулер колданылады, оларды пайдалану тәртібі қандай?

  5. Алгоритмнің басқарушы құрылымдары дегеніміз не? Оның кандай түрлері бар?

  6. Тізбектелу деп алгоритмнің қандай құрылымын айтамыз

  7. Алгоритмді сипаттау эдістеріне қойылатын талаптарды атаңыз, табиғи тілден сипатгау мен апгоритм схемасы сол талаптардың қайсысын қанагаттандырады?

  8. Тармақгалу, тармақ деп нені айтамыз?

  9. Тармақталу дегеніміз не, схемадағы үлгілері қандай?

  10. Алгоритмнің жұмысы қандай параметрлер бойынша бағаланады?

  11. Цикл дегеніміз не? Циклды ұйымдастыру үшін кандай мәліметтер керек?

  12. Цикл денесі қалай құрастырылады? Баскарушы айнымапының /параметрдің / атқаратын ролі қандай?

  13. Цикл құрылымының қандай үлгілерін білесің? Циклдың "Дейін" "Әзір" үлгілерінің құрамы кандай, олар схемада жэне табиғи тілде қапай белгіленеді? Олардык айырмашылықтары неде?

  14. Итерациялық цикл дегеніміз не? Итерациялык циклды ұйымдастыру үшін қандай мәліметтер керек?

  15. Цикл құрылымының қандай үлгілерін білесің? Циклдың "Дейін". "Кейін" үлгілерінің құрамы кандай, олар схемада жәнетабиги тілде калай белгіленеді? Олардың айырмашылыкгары неде?

  16. Қандай құрылым қабаттасқан цикп деп аталады? Қабаттаскан апгоритмдер қапай сипатталады?

  17. Қабатгасқан циклды ұйымдастырудың ерекшеліктері кандай?

  18. Массив дегеніміз не?Индекс деп нені айтамыз?Массивтің өлшемі, мөлшері ұгымдары қапай түсінесіз?

  19. Массив элементтері ЭЕМ еске сақтау күрылгысында калай орналасады? Массив элементтерінэлементтерін пайдалануды қалай жүзеге асыруға болады?

  20. Қандай құрылым қабаттасқан цикл деп аталады? Қабаттаскан циклды ұйымдастырудын. ерекшеліктері қандай?

  21. Қандай құрылым қабаттасқан цикл деп аталады?

  22. Қабаттасқан циклды ұйьгмдастырудың ерекшеліктері қандай?

  23. Қандай құрылым қабаттасқан цикл деп аталады?

  24. Кабатгасқан циклды ұйымдастырудың ерекшеліктері кандай?

  25. Алгоритмдері тармақталған цикл үлгісінде сипатталатын есегітер?

  26. Алгоритмнің белгілері?

  27. Алгоритм қалай жазылады?

  28. Алгоритмнің жұмысы қандай параметрлермен сипатталады?

  29. Жинақтау алгоритмі қалай сипатталады?

  30. Рекурренттік қатынас дегеніміз не?

  31. Жиынның анықтамасы?

  32. Аргумент мәндерінің аймағы?

  33. Массив мөлшері деген не?

  34. Индекс нені анықтайды?

  35. Файлдар қайда сақталады?

  36. Компьютер үшін файл деген не?

  37. Рекурсия дегеніміз не?

  38. Жиындардың шектелген зоналары мен жумыс кезіндс операциялар санын калай азайтуға болады?

  39. "Көбік” әдісі қандай ?

  40. Цифрлы реттеу деп нені айтады? Алып тасгау арқылы реттеу деп ше?

  41. Массивтің екі элементтерінің орындарын калай ауыстыруга болады? Фуикция мэндерін есептеу алгоритмдерінің айырмашылыгы неде?

  42. Екі массив жэне бір массив элементтерінін косындыларын есептеудін алгоритмдері кандай?

  43. Бірдей мөлшерлі екі массив элементтерін кезектестіріп бір массивке біріктірудін алгоритмі кандай?

  44. Масив элементгерінің әрбір үшінші элементін экранга шыгару алгоритімін көрсетіңіз?

  45. Массив элементін өшірудің, жаңадан элемент косудың алгоритмдері қандай? Массив элементтерін жылжыту неге соңынан басталу керек?

  46. Массив элементтерін кері багытта орналастырудың алгоритмін сипаттаңыз.

  47. Жаңадан кұрылған массивтіңэлементтерініңсанын қалай аныктауга болады?

  48. Берілген шартгы қанагаттандыратын массив элементтерін қосудың, санаудың алгоритмдері кандай?Ол алгоритмдерді сипататуга қандай кұрылымдарды пайдаланган ыңгайлы?

  49. Массивте берілген элементтің бар иә жок екендігін қалай білуге болады?

  50. Массивтің ең үлкен элементін анықтаудың алгоритмі кандай?

  51. Массивтің ең кіші элементін анықтаудың алгоритмі кандай?

  52. Массив элементтерін өсу ретімен орналастырудың алгоритмін сипаттаңыз. Сыртқы, ішкі циклдардың параметрлерінің өзгеру диапазондары кандай?

  53. A = (а1...,аn)массиві берілген. Осы массив үшін массивтің жұп нөмірлі элементтерінін косындысы сипаттау керек?

  54. A = (а,9...9ап) массиві берілген. Осы массив үшін нөлге тең элементтер санын шыгарыңыз?

  55. s = a, + 2аг +2а3 +... + 2ая_х + ая қосындысын есептеудің алгоритмін жазыңыз;

  56. A = (a,,...,an) массиві берілген. Осы массив үшін массивтің так нөмірлі элементтерінің косындысы сипаттау керек?

  57. A - (a,,...,an) массиві берілген. Осы массив үшін нөлге тен емес элементтер санын шыгарыныз?

  58. Массив беріп ондагы кездескен нөлге тен мәнлерді * ауыстыру алгоритмш керсетіщз?

  59. Екі елшемді массив бсрілсін, 2:2 орында орналаскан элемектті зкра^ға ишғару алгорипмш хөрсоіиЬ?

  60. Берілген шартты канағаттандыратын массив элементтерін көбейтудің, санаудың алгоритмдері кандай?Ол алгоритмдерді сипататуға қандай құрылымдарды пайдаланған ыңғайлы?

1. Алгоритм және оның қасиеттері.Оларды қалай түсінесіз?

Алгоритм математика мен информатиканың кең тараған негізгі ұғымдарының бірі. Көп жағдайда алгоритм ұғымы электронды есептеу машиналарына байланысты пайда болады деген пікір дұрыс емес. Алгоритм ұғымы электронды есептеу машиналарынан бірнеше ғасыр бұрын пайда болып өмірде қолданылып келеді. Алгоритм деген сөздің өзі ІХ ғасырда өмір сүрген орта азиялық белгілі математик Мұхамедтің арабша атынан (альХорезм) латынша (algorіthmі) жазылуынан таралған.Ол қазіргі уақытқа дейін өзіміз қолданып жүрген арифметикалық төрт амалдың орындалу ережелерін тұжырымдаған. Мұхамед Әл-Хорезми әдісін жақтаушылар алгоритмиктер деп, белгілі бір қасиеттері бар ережелер жүйесі алгоритм деп аталып кетті.Қазіргі кездегі түсінігіміз бойынша алгоритм ұғымын кез келген процесті орындау үшін берілетін нұсқаулардың жиынымен байланыстыруға болады. “Мұнда есептің алгоритмі берілген” деген сөйлемді “Мұнда белгілі бір есепті шешуге қажетті амалдар беріліп, олардың орындалу реті көрсетілген” деп түсінуге болады. Күнделікті өмірде біз алгоритмнің көптеген түрлерімен кездесіп отырамыз. Мысалы, шай қайнату, торт пісіру, дәрі-дәрмек жасау, көше тәртібін сақтау, таныс кісімен сөйлесу, лифтпен көтерілу т.б.с.Алгоритм ұғымын тереңірек түсіну үшін бірнеше мысалдар келтірейік.Алгоритмнің қасиеттері. Алгоритмдер адам өмірінің алуан түрлі саласын қамтығанымен, олардың бәріне ортақ бірнеше қасиеттері мен ерекшеліктердің бар екендігін байқауға болады. Алгоритмнің негізгі қасиеттеріне оның үздіктілігі, анықталғандығы, жалпылығы, нәтижелілігі жатады.Алгоритмнің үздіктілігі деп алгоритмі сипатталып отырған процестің қадамдарға бөлінуін айтады. Қадамдарда нұсқау түрінде қарапайым іс-әрекеттің сипаттамасы беріледі. Алгоритм қадамдарды кез келген ретпен орындала бермейді. Әр адамның сипаттамасында келесі орындалатын қадам көрсетілуі мүмкін, егер ол ашық көрсетілмесе, нұсқаулар жазылу ретімен орындалады деп түсіну келісілген. Алгоритмде көрсетілген іс-әрекеттерді орындаушы адам немесе автоматты құрылғы (ЭЕМ) болуы мүмкін.Анықталғандық (түсініктілік) қасиеті. Алгоритмнің бұл қасиеті, алгоритмді құрайтын іс-әрекеттер оны орындаушыдан ойлануды қажет етпейді, тек орындай алатындай нақты түсінікті етіп берілуі керектігін көрсетеді. Алгоритм еркіндікке жол бермейтін нақты жарлық. Сондықтан алгоритмде “екі санның біреуін таңда” немесе “қызыл заттардың біреуін ата” деген сияқты нұсқаулар болмауы тиіс. Алгоритмнің бұл қасиеті ешқандай ақыл-ой қабілеті жоқ құрылғылардың көмегімен есеп шығарудың мүмкіндігіне кепілдік береді. Осындай құрылғыларға біздің заманымызда ЭЕМ жатады.Жалпылық қасиеті. Бөл оның көпшілікке бірдейлік қасиеті, яғни белгілі бір есепті шығаруға құрылған алгоритмді сол типтегі есептердің барлығына да қолдана беруге болатынын көрсетеді. Алгоритмнің нәтижелігі деп саны шектеулі қадамдардағы нұсқаулар орындалып болғаннан кейін есептің шешімі табылатыны не болмаса шешімінің болмайтыны айқындалатынын айтады.

2.Табиғи тіл де алгоритм қадамдарын сипаттауға қандай қызметші сөздер қолданылады және олардың мағыналары қандай? Алгоритмді табиғи тілде сипаттау.Алгоритмді сипаттаудың бұл тәсілінде алгоритм қадамдарын сипаттауға математикалық формулалар мен табиғи тілдің мүмкіншіліктері пайдаланылады. Енді алгоритмді табиғи тілде сипаттау үшін қолданылатын кейбір шартты белгілерді келтіреміз:

Алгоритмді алгоритмдік тілде сипаттау үшін қолданылатын белгілеулер.

Енгізу <мәні енгізілетін айнымалылар тізімі>

Қорытындылау <мән қорытындылайтын айнымалылар тізімі>

Айнымалы:=өрнек

:= айнымалы шамаға өрнектің мәнін меншіктеу керектігін білдіретін символ.

Мысалы, x:=5; y:= ; z:=z+3 жазулары алгоритмді орындаушыға: х-ке 5 мәнін, у-ке өрнегінің мәнін, z-ке z+3 өрнегінің мәнін меншіктеу керектігін білдіреді. ЭЕМ үшін бұл операция x, y, z ұяшықтарына := белгісінің оң жағына жазылған өрнектердің мәндерін жазудың қажеттігін білдіреді.

N-ға көшу. Бұл құрылым алгоритмнің атқарылуын N қадамның әрі қарай жалғастыр деген нұсқау. Мұндай құрылымды басқаруды N қадамына беру деп оқиды.

Егер <шарт> 1-әрекет, әйтпесе 2-әрекет.

Егер <шарт> 1-әрекет.

3.Алгоритм құрастыру және оны сипаттау әдістері. Алгоритм құру үшін, алдымен есептің шешу әдісін жақсы меңгеру керек. Алдымен берілген мәліметтермен есептелетін шамаларды анықтап, содан кейін ғана есепті шешу тәсілі бойынша алгоритм құрастырылады. Алгоритм құрастыру деп есепті шешуге қажетті амалдардың тізбегін анықтауды, ал сипаттау деп алгоритм қадамдарын мағынасы мен жазылу үлгісі тұрақты шартты белгілер жүйесі арқылы жазуды айтады. Алгоритм белгілі бір орындаушыға арналып жасалатындықтан, оны сипаттаған кезде атқарушының мүмкіншіліктері ескерілуі керек. Егер алгоритмді атқарушы адам болса, алгоритмнің көрнекі болуына аса көңіл аудару керек те, ал атқарушы ЭЕМ болса, электронды есептеуіш машиналардың ерекшеліктері ескерілуі керек, яғни онда енгізу, қорытындылау, меншіктеу қадамдары болуы тиіс. Енгізу деп берілген мәліметтерді ЭЕМ есте сақтау құрылғысына жазуды, ал қорытындылау деп керісінше, ЭЕМ еске сақтау құрылғысынан пайдаланушыға жеткізуді айтады. Енгізу, қорытындылау мен қатар меншіктеу операциясы есептец машиналарында қолданылатын маңызды операциялардың бірі. Меншіктеу деп белгілі бір шаманың мән қабылдауын айтады.

3.Алгоритмді сипаттаудың көптеген тәсілдері бар. Солардың ішіндегі ең қарапайымдары:

Алгоритмді алгоритмдік тілде сипаттау.

Алгоритмді схема арқылы сипаттау.

Алгоритмді арнаулы алгоритмдік тілде сипаттау.

Енді осылардың әрқайсысына жеке жеке тоқталайық.

Алгоритмді табиғи тілде сипаттау.Алгоритмді сипаттаудың бұл тәсілінде алгоритм қадамдарын сипаттауға математикалық формулалар мен табиғи тілдің мүмкіншіліктері пайдаланылады. Енді алгоритмді табиғи тілде сипаттау үшін қолданылатын кейбір шартты белгілерді келтіреміз:

Алгоритмді алгоритмдік тілде сипаттау үшін қолданылатын белгілеулер.

Енгізу <мәні енгізілетін айнымалылар тізімі>

Қорытындылау <мән қорытындылайтын айнымалылар тізімі>

Айнымалы:=өрнек

:= айнымалы шамаға өрнектің мәнін меншіктеу керектігін білдіретін символ.

Мысалы, x:=5; y:= ; z:=z+3 жазулары алгоритмді орындаушыға: х-ке 5 мәнін, у-ке өрнегінің мәнін, z-ке z+3 өрнегінің мәнін меншіктеу керектігін білдіреді. ЭЕМ үшін бұл операция x, y, z ұяшықтарына := белгісінің оң жағына жазылған өрнектердің мәндерін жазудың қажеттігін білдіреді.

N-ға көшу. Бұл құрылым алгоритмнің атқарылуын N қадамның әрі қарай жалғастыр деген нұсқау. Мұндай құрылымды басқаруды N қадамына беру деп оқиды.

Егер <шарт> 1-әрекет, әйтпесе 2-әрекет.

Егер <шарт> 1-әрекет.

4.Алгоритмнің схема түрінде сипатталуы. Алгоритм құрылымының графикалық түрде бейнеленуін алгоритм схемасы деп атайды. Схемаларда алгоритм қадамдары тік төрт бұрыш, ромб, параллелограмм, т.с.с. геометриялық фигуралар арқылы белгіленеді. Алгоритмнің әр түрлі қадамдарын белгілеуге арналған геометриялық фигураларды блоктар деп атайды. Блоктардың ішінде сол қадамда орындалатын іс-әрекеттің сипаттамасы беріледі. Алгоритм схемасын жазуға пайдаланылатын символдар, олардың формалары, аталуы, өлшемдері арнаулы мемлекеттік стандарт бойынша қабылданған. Төмендегі кестеде жиі қолданылатын блоктар, олардың аталуы, атқарылатын қызметі,пайдалану тәртібі берілген

2.1-кесте.

Аталуы

Символ дар

Пайдалану тәртібі

1

Жіберу, тоқтау

Алгоритмнің басы мен соңы белгіленеді. Ішінде басы, соңы деген қызметші сөздер жазылады. Екеуінің арасында алгоритмнің басқа қадамдары орналасады.

2

Процесс

Шамалардың мәнін, ішкі формаын, орнын өзгертуге бағытталған операция немесе операциялар белгіленеді. Төртбұрыштың ішінде тиісті формулалар жазылады.

3

Енгізу, қорытындылау

Мәліметтерді өңдеуге жарамды түрге түрлендіру Блоктың ішінде енгізілетін, қорытындылайтын шамалар жазылады.

4

Шарт

Берілген шартты тексерудің нәтижесіне байланысты алгоритм қадамын таңдау. Ішіне есептің шарты жазылады. Блоктан “ия”, “жоқ” деген екі стрелка шығады. Егер көрсетілген шарт орындалса “ия” стрелкасы орындалады да, шарт орындалмаса “жоқ” стрелкасы көрсетіп тұрған қадам орындалады.

5

Модификациялау

Циклдың басы. Қайталанатын әрекеттерді сипаттау.

6

Алдын-ала анықталған процесс

Бұрын құрастырылған немесе бөлек сипатталған алгоритм.

7

Байланыстырушы

Бір-бірінен алыс орналасқан блоктарды байланыстыратын түзулерді үзіліспен сызуға болады. Үзілістің басында және соңында тиісті блоктардың нөмірі жазылған байланыстырушы белгілер қойылады.

8

Түсініктеме

Символдың ішіне оның сипаттамасы симай қалса, негізгі текстке параллель түрде түсініктеме жазылады. Көрсетілген белгі блок пен оған берілген түсініктің байланысын көрсетеді.

5)Алгоритмнің басқарушы құрылымдары.Біз әртүрлі сипаттау әдістерінде Алгоритмнің басқарушы құрылымдары деп атқарылу реті бір-бірімен стандартты жалғасу әдісіне байланыстыанықталатын алгоритм қадамдарының жиындарын айтамыз.Алгоритм құрылымдарының үш түрі бар: тізбектелу, тармақталу және қайталау (цикл). Осы үш құрылымды араластырып пайдалану арқылы кез келген күрделі есептердің алгоритмдерін сипаттауға болады.

Басқарушы құрылымдар кез келген алгоритмдік тілдің негізі болып табылады. Сондықтан, алгоритмдерді басқару құрылымдары негізінде сипаттау программалау тілін тез меңгеріп пайдалануға тиімді қадам. Оған қоса алгоритмді сипаттауға басқарушы құрылымдарды пайдалану жаңадан жазылған алгоритмнің дұрыстығын тексеруді жеңілдетеді және басқа программалаушылардың әр уақытта жазған алгоритмдерін пайдалануға мүмкіншілік береді. Енді осы алгоритмнің басқарушы құрылымдарына жекелеп тоқтайық.

6.Тізбектелу. Сызықты алгоритмдерТізбектелу алгоритмнің ең қарапайым құрылымы.

Ол табиғи тілде және схемада төмендегіше белгіленеді:

1-әрекет. Әрекеттердің осылайша тізбектеліп жазылуы.

2-әрекет. Олардың бірінен кейін бірі атқарылатындығын.

………... көрсетеді, яғни 2-ші әрекет 1-шіден кейін, 3-ші

n-әрекет. әрекет, 2-шіден кейін т.с.с.

Тізбектелудің схемада белгіленуі. Мұндағы стрел

калар атқарылу ретін көрсетеді. Құрамында тізбектелу

құрылымы бар алгоритмдер сызықты алгоритмдер деп

аталады. Сызықты алгоритмдердің құрамына енгізу, қорытындылау, өңдеу қадамдары енеді. Енді сызықты алгоритмдерге мысалдар келтірейік.

1-алгоритм. Формула бойынша есептеу. у-тің мәнін берілген өрнегі бойынша есептеу керек болсын.

Пайдаланылатын айнымалылар: Берілгені: х; Нәтиже: у

Табиғи тілде алгоритмдеу және оны сипаттау:

Басы.

Енгізу: х.

Есептеу: .

Қорытындылау: у.

Соңы.

Алгоритм қадамдарды жазылу ретімен бір бірден ғана орындалады.

8)Тармақталу. Тармақталған алгоритмдер.Көп алгоритмдерде қадамдардың жазылуы қатар болғанмен атқарылу реті қатар бола бермейді. Алгоритм қадамдарының атқарылу реті берілген немесе артық шарттың нәтижесіне байланысты болуы мүмкін. Берілген шартты тексеру нәтижесінде алгоритмнің келесі орындалатын қадамдары анықталады. Шартқа байланысты атқарылатын әрекет немесе әрекеттер тобы тармақ деп шарт тексеріліп тұрған қадам таңдау қадамы деп аталады.

Есептің берілгеніне байланысты алгоритмдерде тармақтардың саны бір, екі немесе бірнешеу болып келуі мүмкін.Тармақталы құрылымнан ең қарапайым түрі бір тармақтан тұрады және ол төмендегідей белгіленеді: Табиғи тілде:Егер С онда А Мұндағы, С-тексерілетін шарт; А-бір немесе бірнеше әрекеттен тұратын тармақ.Бұл құрылымның мағынасы:

егер С шарты ақиқат болса, А тармағы орындалады, жалған болса А тармағы ескерілмейді де, келесі қадамдағы әрекет атқарылады. Мысалы, у-тің мәні өрнегі бойынша есептеліп, нәтижені егер ол нөльден үлкен болса ғана баспаға беру керек болсын.

Бұл есептің алгоритмін төмендегідей сипаттауға болады:

Т абиғи тілде:

Басы.

Енгізу: х.

Есептеу: .

Егер у<0 болса, у-ті қорытындылау.

Соңы.

Екі тармақтан тұратын тармақталу құрылымының

үлгісі төмендегідей.

Табиғи тілде:

Егер С онда А1 әйтпесе А2

Мұндағы С-тексерілетін шарт А1, А2-алгоритм тармақтары. Егер С шарты ақиқат болса, А1 тармағы атқарылады, А2 ескерілмейді, жалған болса керісінше, яғни

А1 ескерілмейді, А2 тармағы орындалады. А1, А2 тармақтарының құрамына басқа тармақталу құрылымдары енуі мүмкін. Құрамына тармақталу құрылымы енетін алгоритмдер тармақталған алгоритмдер деп аталады.

Тармақталу алгоритмі шартты тексеру арқылы орындалатын алгоритм.

11. Цикл - нұсқауларды жиынның бiрнеше рет орындауын ұйым үшiн қолайлы жоғары деңгейлi программалау тiлдерiндегi бағдарлаушы конструкциясының бiр түрi. Мысалы, нұсқауларды шартты өту көмегiмен кез келген әдiс ұйымдастырылған кез келген дүркiн-дүркiн атқарылатын тiзбек деп аталуға тiптi циклдi де алды дайды. Анықтаулар Нұсқауларды бiрнеше рет орындау үшiн қолайлы тiзбек циклда денемен деп аталады. Циклданың денесiнiң жеке орындауы итерациямен деп аталады. Өрнек анықтайтын, итерация, немесе цикл орындала шығу шарты немесе (немесе жалғасының шартымен оның циклданың аяқтауды қажеттiлiк немесе жалғасының белгiсi ) ретiнде шындығын түсiндiрiп беретiнi соған сәйкес) циклданың аяқтауын шартпен бiтiп, деп аталады. Итерацияның ағымдағы нөмiр саудырлақ айнымалы циклда циклданың итерацияларының есептеуiшi немесе жай ғана есептеуiшпен деп аталады. Мысалы, цикл есептеуiш, есептеуiште мiндеттi түрде болады, бiр болуға мiндеттi емес болғанында - циклдасы шығу шарты бiрнеше жұрнақтарды қабылдайтын сөз т циклдерден айнымалы тәуелдi бола алғанында емес, белгiлi бiр уақытты шабуылмен сыртқы шарттармен анықтала алғанында ), есептеуiш соңғы жағдайда тiптi керек болмауы мүмкiн болғанында. Кез келген циклданың орындауы айнымалы циклдалардың бастапқы инициализациясы, шығу шартының тексеруi, әрбiр итерациядағы айнымалы циклдасының циклда және жаңартуын дененiң орындауы қосады. Мысалы, демек, бұдан басқа, программалау тiлдерiнiң көпшiлiгi (си - breakтың тiлiнде) шығу шарты және (си - continueнiң тiлiнде) итерацияның рұқсатнамасының операторлары циклдадан шығатын есiктi циклда аяқтаудың операторлары циклдi мерзiмiнен бұрын басқару үшiн құрал тәуелсiз шындық iлiгедi. Цикл (Cycle, loop) — 1) алгоритмнің немесе программаның бірнеше рет орындалатын бөлігі; ол берілген айнымалы белгілі бір мәнге жеткенше немесе бір көрсетілген шарт орындалып болғанша атқарылатын программадағы бірнеше рет қайталау операторлар жиынынан тұрады; 2) сол бір тізбек бойымен тұракты түрде кайталап отыратын операциялар жинағы. Операцияны әрбір қайталау кезінде өзгеріс болады.Цикл құрылымды алгоритмдер..Есептің шығару әдісіне байланысты алгоритмнің кейбір қадамдарын бірнеше рет қайталап атқаруға тура келеді. Қайталанып орындалатын қадамдарды сипаттау үшін цикл құрылымы қолданылады. Цикл құрылымымен циклдің денесі, параметрі (басқарушы айнымалы) параметрдің алғашқы, соңғы мәндері, қадамы деген ұғымдар тығыз байланысты.

12. Циклдің денесі деп есептің алгоритміне байланысты көздеген нәтижеге жету үшін қайталанып орындалуға тиісті қадамдардың жиынын айтады.

Цикл денесінің қайталанып атқарылуын ұйымдастыруға қатысушы айнымалыны басқарушы айнымалы немесе циклдің параметрі деп атайды.

13. “ Дейін ” үлгісінің құрамы және оған түсініктеме.

Суретте “ Дейін ” циклының схемалық үлгісі көрсетілген. Цикл 4 бөлімнен тұрады. Циклды дайындау бөлімінде параметрге оның алғашқы мәні беріледі. Бұл бөлімде параметрден өзге шамаларға да мәндер берілуі мүмкін.

Циклдың денесіне есептің алгоритміне байланысты қайталанып орындалуға тиісті амалдар енеді.

Қайталау құрылымының үшінші бөлімінде параметр алгоритмге байланысты белгілі шамаға өзгертіледі. Сөйтіп, цикл денесінің қайталанып орындалуына дайындық жүргізіледі.

Циклдың төртінші бөлімінде параметрдің ағымдағы мәнін талдау арқылы цикл денесін қайталау, қайталамау керектігі шешіледі. “Дейін” үлгісінің ерекшелігі, циклды тоқтату шарты цикл денесінен кейін тексерілетіндіктен, циклдың денесі ең болмағанда бір рет атқарылады.

“ Дейін”

14.  Цикл орындалмас бұрын,  оның қайталану саны белгісіз болған жағдайда,  қадамдық циклді пайдаланады.  Циклді аяқтау  үшін белгілі бір шарт тексеріледі. Егер шарт орындалмаса,  онда кайталану командасы атқарылады.  Ал шарт орындалса,  онда цикл  қайталанбайды. Қадамдық циклді кескіндегенде модификатор қолданылмайды, себебінеше рет қайталанатынын алдын ала білмейміз.  Енді қадамдық циклге мысал келтірейік. Итерациялы циклдар. Көп есептердің алгоритмдерінде циклдың қайталану саны аралық нәтижеге байланысты болып келеді және алдын ала белгісіз. Бұндай циклдарды сипаттау үшін Дейін немесе Әзір-үлгісін пайдалануға болады. Қарастырылған циклдардан айырмашылығы циклдан шығу әдісінде. Қайталау саны белгісіз циклдардан шығу үшін нәтиженің берілген дәлдікке жету шарты тексеріледі. Кейде мұндай циклдарды итерациялық циклдар деп те атайды. Итерациялық циклдар көбінесе жуықтап есептеу әдістерін программалағанда қолданылады. Мысал ретінде шексіз қатарды есептеудің алгоритмін қарастырайық:

Қосу шексіз қатардың кезекті мүшесінің абсолют шамасы алдын ала берілген санынан кіші болғанға дейін жүргізіле береді Қосындыны есептеу алгоритмі бойынша.

15.Қайталау саны алдын-ала белгілі циклдарды ұйымдастырудың үш түрлі үлгісі бар, олар:

а) “Дейін” б) “Кейін” в) “параметрлі цикл”

Енді осылардың әр қайсысына жекелеп тоқталамыз:

а) “ Дейін ” б) “ Кейін ” в) “ Параметрлі цикл ”

Енді осылардың әр қайсысына жекелеп тоқталамыз.

а) “ Дейін ” үлгісінің құрамы және оған түсініктеме.

Суретте “ Дейін ” циклының схемалық үлгісі көрсетілген. Цикл 4 бөлімнен тұрады. Циклды дайындау бөлімінде параметрге оның алғашқы мәні беріледі. Бұл бөлімде параметрден өзге шамаларға да мәндер берілуі мүмкін.

Циклдың денесіне есептің алгоритміне байланысты қайталанып орындалуға тиісті амалдар енеді.

Қайталау құрылымының үшінші бөлімінде параметр алгоритмге байланысты белгілі шамаға өзгертіледі. Сөйтіп, цикл денесінің қайталанып орындалуына дайындық жүргізіледі.

Циклдың төртінші бөлімінде параметрдің ағымдағы мәнін талдау арқылы цикл денесін қайталау, қайталамау керектігі шешіледі. “Дейін” үлгісінің ерекшелігі, циклды тоқтату шарты цикл денесінен кейін тексерілетіндіктен, циклдың денесі ең болмағанда бір рет атқарылады.

б) Кейін циклының құрамы және оған түсініктеме.

“ Кейін” циклының құрамы да “Дейін” циклының құрамындай тек бөлімдердің орналасу реті өзгеше. Циклды қайталау ( циклдан шығу) шарты циклдың денесіне дейін тексеріледі. Егер циклдың қайталау шарты бірінші тексергенде орындалмаса, циклдың денесі бір де бір атқарылмай қалуы мүмкін. “ Кейін” циклының тағы бір ерекшелігі параметрді өзгерткенен кейін, цикл құрамына міндетті түрде басқаруды циклдың денесіне беретін қосымша қадам енгізудің қажеттілігі.

“ Дейін” ” Кейін ” “ Параметрлі цикл ”-

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

b)“ Параметрлі цикл ”-дың құрамы және оған түсініктеме.

Параметрлі цикл – цикл құрылымын жазудың ыңғайлы бір түрі болып табылады. Схемада циклдың бұл түрі төмендегідей белгіленеді: Стеркалардың оң жағына қойылған нөмірлер схемаға түсінік беру үшін жазылған. Мұндағы,П – цикл параметрінің ағымдағы мәндерінің белгіленуі Пб, Пс – параметрдің бастапқы, соңғы мәндері Н – параметрдің қадамы.Қадам деп параметрдің мәндерінің айырмасы айтады. П, Пб, Пс, Н мәндері бүтін.Циклдың бұл түрі 2 бөлімнен тұрады. Біріншісі – циклды дайындау деп, ал екіншісі – циклдың денесі деп аталады. Циклдың бұл белгіленуін былайша талқылауға болады: Циклдың денесі ен алдымен, параметрдің алғашқы мәні үшін ( П Пб ) орындалады. Сонан кейін параметрдің келесі мәні П П+Н формуласы бойынша анықталып, параметрдің соңғы мәнімен салыстырылады П Пс. Егер П Пс ақиқат болса, онда басқару циклдың денесіне беріледі ( стрелка І ). Циклдың денесіндегі амалдар орындалғанан кейін басқару міндетті түрде циклды дайындау блогына беріледі. Енді дайындау блогында параметрдің мәні Н-қа арттырылады, ( П П+Н+Н ) да параметрдің соңғы мәнімен салыстырылады т.с.с. П Пс болғанша цикл денесінің орындалуы қайталана береді. П Пс шарты жалған болған кезде циклдың қайталануы тоқтатылып, басқару циклдың денесінен кейін тұрған блокқа беріледі. ( схемада бұл 3 стрелка арқылы көрсетілген). Табиғи тілде “ параметрлі цикл ” төмендегі қадамдар жиыны түрінде беріледі.

І үшін  М-нан бастап N-ға дейін Н-қа қадаммен қайталанады. Сонымен қайталау саны белгілі циклдарды ұйымдастыру үшін алдын ала сөз жүзінде талданған алгоритм бойынша алғашқы, соңғы мәндері және өзгеру қадамы белгілі шаманы параметр ретінде қабылданады. Содан кейін цикл денесіне енетін амалдар анықталады. Осыдан кейін барып таңдалған үлгі бойынша алгоритмді сипаттап жазуға болады. Енді алгоритмдерінің құрамында қайталау саны алдын ала белгілі циклдер болатын үлгі есептерді келтіреміз.

Бір аргументті функция мәндерін есептеудің алгоритмі

Есептің қойылуы:

Аргументтің дан Һ қадамымен өзгеретін в –ға дейінгі мәндері

үшін

функциясының мәндерін есептеу керек.

Пайдаланатын айнымалылар:

Берілгендері:

Нәтиже: У-ң мәндері

Алгоритм құрастыру және оны сипаттау

8) Алгоритм соңы.

Алгоритм сипаттауға “Дейін” құрылымы пайдаланылған. Функция мәндерін есептейтін алгоритмі “параметрлі цикл ” құрылымын пайдаланып сипаттауға болады ( 4.5-сурет)

О л үшін функция мәндерін х-тің неше мәні үшін есептеу керектігін формуласы бойынша анықтап алу керек. Есептелген y-ң мәндерін баспаға беріп отыру қажет Циклдың параметрі ретінде мәні 1-ден n –ге дейін өзгеретін қосымша i айнымалысын енгізуге болады.

Табиғи тілде

1. Алгоритм басы

2.Енгізу: a,b,h

3.Есепте: n=(b - a)/h+1

4.Меншікте: x=a

5.Х-тің 1 бастап n-ге дейінгі h қадаммен өзгеретін мәндері үшін қайталап есепте

есептеу: y=f (x)

5.2 Баспаға бер: х,у

5.3 Есепте: x=x+h

16-17-21-20-22-23-24. Цикл денесінің құрамына бір немесе бірнеше циклдар енуі мүмкін. Мұндай циклдарды қабаттасқан циклдар деп атайды. Циклдарды қоршап түрған циклды сыртқы деп, басқалары ішкі циклдар деп аталады. Қабаттасқан циклды ұйымдастыру әдісі де қарапайым циклды ұйымдастыру әдісіндей. Тек сыртқы, ішкі циклдардың параметрлері әртүрлі болуы керек және екеуі қатар өзгермеуге тиіс. Қабаттасқан цикл үлгісімен сипатталатын үлгі алгоритмдер.

1-алгоритм. Екі аргументті функцияның мәндерін есептеудің алгоритмі.

1) Есептің математикалық қойылуы: Төменде көрсетілген функцияның мәндерін есептеукерек:

Мұндағы, , hx- қадам, , hy- қадам

Алгоритм құрастыру және сипаттау. Бұл есепте х-ң әр мәнінде

қосындысы есептелу керек. Алгоритмді сипаттау үшін қабаттасқан цикл құрылымы пайдаланылады.Ішкі циклдың параметрі і ( і-дың соңғы мәні қосылғыштардың санын көрсетеді), сыртқы циклдың параметрі х. Сыртқы цикл “Дейін” үлгісімен, ішкі цикл “параметрлі цикл” үлгісімен берілген.

2) пайдаланылған айнымалылар:

Берілгендері: a, b, c, d, hx, hy

Нәтиже: z мәндерінің жиыны

n1 – сыртқы циклдың қайталау саны,

n2 – ішкі циклдың қайталау саны.

2) Алгоритм құрастыру және сипаттау

4-9 блоктар сыртқы циклды, ал 6-9 ішкі циклды құрайды. х-ң әр мәнінде у өзінің барлық мәндерін қабылдап шығады. Ішкі циклдың алдында х-ң мәні (5-6) есептеледі. Сөйтіп, х бойынша құрылған циклдың ішіне, у бойынша ұйымдастырылған цикл орналасады.

2-алгоритм. Қосынды түрінде берілген функцияның мәнін есептеудің алгоритмі.

1) Есептің математикалық қойылуы

функциясын есептеу керек. Мұндағы , h-аргументтің өзгеру қадамы

2) Қолданылатын айнымалылар:

Берілгендері: a, b, h, n

Нәтиже: у мәндерінің жиыны.

18. Массив –бір типті көп элементтен трады.Массивпен оның атын шақыру арқылы жұмыс істейміз.Массивтің кез-келген элементін таңдауға болады.Ол үшін оның тұрған орнын көрсететін индиксті көрсету керек.Массив элементінің саны оны анықтап хабарлағанда белгіленеді.содан соң өзгермейді.Егер массив хабарланған болса, онда оның кез-келген элементін массивтің

атын және элемент индиксін квадрат жақшаның ішінде көрсету арқылы оқуға болады.Массивтер айнымалылар сияқты анықталады.int a[100]-100 элементтен тұратын және бүтін саннан тұратын массив хабарланған.Массив индиксациясы 0-ден басталады.

Екі өлшемді массивтер бір өлшемді массивтер сияқты сипатталады.Екі өлшемді массив элементтері қатар бойынша сипатталады.Си тілінде көрсеткіштнр мен массивтер арасында өте үлкен байланыс бар.Массивтердің индиксі арқылы орындалатын кез-келген операцияны көрсеткіштің көмегімен орындауға болады.

Массив элементтерін енгізу және шығару цикл арқылы жүзеге асырылады. Егер элементтерді ендіру үшін

Readоператоры қолданылса, онда элементтер бір қатарға жазылып енгізіледі. Ал Readln операторы қолданылса, онда әр элементті жаңа қатардан енгізу керекорындалу нәтижесінде N элементтен тұратын массив элементтерін пернетақтадан енгізуді ұйымдастырады, бағдарламада циклді оқығанда Read операторын N рет оқып тоқтап, массив элементтері мәндерін қашан пернетақтадан енгізгенше күтіп тұрады, бұл жерде К айнымалысы цикл параметрі қызметімен қоса массив индексі ретінде де қолданылып тұр.

Кейде бағдарламаның әр орындалуында массив элементтерінің мәндерін қайта-қайта пернетақтадан енгізу керек болады, бұл әсіресе енгізілетін элементтер саны өте көп болған кездерде бағдарлама орындаушы кісіні жалықтырып жібереді, сондықтан бұндай жағдайларда оларды бірден тұрақтылар бөлімінде енгізіп қойса да болады:

Массив элементтерін шығару процесі де енгізуге ұқсайды. Егер цикл денесінде элементтерді шығару үшін Write операторы қолданылса, онда массив элементтері экранға бір қатарға бір-біріне жабысып жазылып шығады. Бұл жағдайда нәтиженің көрнекілігін арттыру үшін Write

операторында массивтен кейін бос орын жазылады. Ал Writeln операторы қолданылса.

Бағдарламаның

, онда массивтің әрбір элементі жаңа қатарға жазылып шығады.

Кейбір есептеулерде белгілі бір шарттың орындалуына байланысты массив элементтерін іздеп табу керек болады. Ол үшін цикл арқылы массивтің барлық элементтерін берілген шамамен салыстыру процесін ұйымдастыру керек. Егер циклдің әр орындалуында массивтің жаңа элементі берілген шартты қанағаттандырса, онда бұл элемент ізделінген элемент болып табылады.

Жиым (Массив; array) — барлығы бір тектес элементтерден құралып, бір атпен ғана аталып реттелген мәліметтер жиымы. Жиымның аты мен элементтерінің индексін көрсету олардың кез келген накты элементін тауып алып, пайдалануға мүмкіндік береді. Индекс (латынша: іndex – көрсеткіш, тізім) –

математикалық өрнекті бір-бірінен ажырату үшін сол өрнектің жоғарғы не төменгі жағына қойылатын сан не әріп түріндегі көрсеткіш. Мысалы, x0, xі, a3, anm, мұндағы 0, і, 3, nm – индекстер;

есімдердің, атаулардың, т.б. көрсеткіші, тізімі; 3) шартты белгілердің (әріп не цифр түріндегі) жүйесі (мысалы, кітапхана-библиография индексі, пошта индексі, т.б.); 4) қандай да бір экономикалық құбылыстың (өндірістің көлемі, бағасы, сыртқы сауда, т.б.) тізбекті өзгерісін өрнектейтін (әдетте, процентпен) цифр түріндегі көрсеткіші.

Жиымның өлшемі (Измерение массива; array size) — жиым өлшемділігінің баспалдақтылығы. Бір өлшемді жиымның өлшемі біреу, екі өлшемді жиымның өлшемі екеу (жол жөне баган) және т.б. Программалау тілдерінде жиымның өлшемі шекаралық жұптардың санымен немесе жиым сипаттамасындагы индекс шекарасымен, не индексті айнымалының индексті санымен анықталады. 

Массив- бұлбіртиптегіэлементтердіңжиынтығынқұрайтынберілгендерқұрылымы.

Берілгендермассивтерібіртипті қарапайым айнымалылар тізбегін береді.Басқаша айтқанда, массив бір атауға біріктірілген айнымалылардың реттелген жиыны. Массив бір ғана атпен белгіленеді. Әрбір жеке алынған айнымалы массив элементі д.а. Массивтің әрбір элементіне бір сандық н/е символдық мән меншіктелуі мүмкін.Массивтер бір

өлшемді және екі өлшемді болып бөлінеді.

Бір өлшемді массив элементтері Паскаль тілінде келесі түрде бейнеленеді:

А={ a[1], a[2], a[3],..,a[n]}. Индекс саны массивтің өлшемін

білдіреді, ал элементтер саны оның көлемін көрсетеді. Массив элементитерінің барлығы бір типке жататын шамалар. Математикада бір өлшемді массивті вектор деп, ал оның элементтерін компоненттері деп атайды. Сондықтан кейде вектор деп аталынса, онда бірөлшемді массив туралы сөз болғаны. Егер программада массивтер қолданылатын болса, онда айнымалыларды сипаттау бөлімінде олар туралы информация болуы тиіс. Сипаттауда массивтің неше индексі болатындығы, ол индекстердің ең кіші және ең үлкен мәндері, элементтердің мәндерінің қандай типке жататындығы көрсетіледі.Бір өлшемді массивтің элементтерін компьютер жадына енгізу қажет болса, онда циклдық операторларды, оның ішінде For циклдық операторын пайдалануға болады.

Массив элементтерін енгізу және шығару цикл арқылы жүзеге асырылады. Егер элементтерді ендіру үшін Read операторы қолданылса, онда элементтер бір қатарға жазылып енгізіледі. Ал Readln операторы қолданылса, онда әр элементті жаңа қатардан енгізу керек.

Бағдарламаныңорындалунәтижесінде N элементтентұратынмассивэлементтерінпернетақтаданенгізудіұйымдастырады, бағдарламадациклдіоқығанда Read операторын N ретоқыптоқтап, массивэлементтерімәндерінқашанпернетақтаданенгізгеншекүтіптұрады, бұлжердеКайнымалысыциклпараметріқызметіменқосамассивиндексіретіндедеқолданылыптұр.

B:ARRAY[1..9]OF REAL={31,25,40, 1.5,48,54.7, 12.3,54.5,21);

Массивэлементтеріншығарупроцесідеенгізугеұқсайды. Егерциклденесіндеэлементтердішығаруүшін Write операторықолданылса, ондамассивэлементтеріэкранғабірқатарғабір-бірінежабысыпжазылыпшығады. Бұлжағдайданәтиженіңкөрнекілігінарттыруүшін Write операторындамассивтенкейінбосорынжазылады. Ал Writeln операторықолданылса, ондамассивтіңәрбірэлементіжаңақатарғажазылыпшығады.

.....................................................................

For K:=1 To N Do Write(‘A[‘,K,’]=’, A[K], ’ ‘);

……………………………………

К: =1;

Repeat Writeln(A[K]); K:=K+1

Until K>N;

................................................................

K: =1;

While K=<N do

Begin Write(A[K], ' '); K:=K+1 End;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]