Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UMK_ASDiP_25-06-2012_kz.doc
Скачиваний:
81
Добавлен:
13.03.2015
Размер:
1.79 Mб
Скачать

2.6 Студенттердің өздік жұмыстары бойынша сабақ жоспары (сөж)

1– тақырып. Сызықты алгоритмдері программалау. Арифметикалық өрнектер.

Әдістемелік ұсыныс: Алгоритмнің блок-схемасын құрып және арифметикалық операциялары мен Турбо Паскаль тілінің функцияларын қолдана отырып берілген вариант бойынша есепті жүзеге асыратын программасын жазу.

Тапсырмалар варианттары:

  1. Екі сан берілген. Олардың квадраттарының арифметикалық орташасын және модульдерінің арифметикалық орташасын табу.

  2. Тік бүрішті үшбұрыштың a мен b екі катеттері берілген. Оның периметрі мен ауданын анықтау.

  3. Куб қабырғасының ұзындығы берілген. Оның қырының ауданын, толық үстіңгі бетінің ауданын және сол кубтың көлемін табу.

  4. R радиусты шеңбердің ұзындығы мен ауданын анықтау (Pi = 3.14).

  5. R1 ішкі радиусы, R2 сырткы радиусы бар(R1 < R2) шығыршық (сақина) берілген. Оның ауданын анықтау. (Pi = 3.14).

  6. Тең бүйірлі үшбұрыштың бір бүйірі берілген. Оның ауданын және үшбұріштың ішінде мен сыртында сызылған шеңберлердің радиустарын анықтау.

  7. Негіздері  a мен b (a > b) болатын және үлкен негізінде alpha бұрышы бар тең бүйірлі трапецияның периметрі мен ауданын табу (бұрыш радианда берілген).

  8. Негіздері  a мен b (a > b) болатын және үлкен негізінде alpha үшкір бұрышы бар тең бүйірлі трапецияның периметрі мен ауданын табу (бұрыш радианда берілген).

  9. (x1, y1), (x2, y2), (x3, y3) үшбұрыштың ұш төбесінің координаталары берілген. Оның периметрі мен ауданын анықтау .

  10. Бүтін төрт таңбалы сан берілген. Div және mod операцияларын қолдана отырып, ол сандардың қосындысын табу.

  11. Бүтін төрт таңбалы сан берілген. Div және mod операцияларын қолдана отырып, ол сандардың көбейтіндісін табу.

  12. Үш таңбалы сан берілген. Оны оңнан солға қарай оқығанда шығатын санды табу.

  13. Үш таңбалы сан берілген. Оның бірінші мен екінші сандарың орнымен алмастырған кездегі жаңа санын табу.

  14. Үш таңбалы сан берілген. Оның бірінші мен үшінші сандарың орнымен алмастырған кездегі жаңа санын табу.

  15. Үш таңбалы сан берілген. Оның екінші мен үшінші сандардың орнымен алмастыр ған кездегі жаңа санын табу.

  16. n (n>99) бүтін саны берілген. Оның ішіндегі соңынан үшінші болып санағандағы санын табу.

  17. n (n>9) натурал саны берілген. Оның ішіндегі бірлік санын табу.

  18. n (n>99) натурал саны берілген. Оның ішіндегі ондық санын табу.

  19. n (n>999) натурал саны берілген. Оның ішіндегі жұздік санын табу.

  20. n (n>999) натурал саны берілген. Оның ішіндегі мыңдық санын табу.

Негізгі әдебиет:1 [77-85], [14-37], 3 [14-39], 4 [4-6].

Қосымша әдебиет: 3 [6-58].

2–тақырып. Тармақты есептеу процессін программалау.

Әдістемелік ұсыныс: IF шартты операторды қолдана отырып әр вариантына байланысты алгоритмнің блок-схемасын құру және программасын жазу.

Тапсырмалар варианттары:

  1. Үш бүтін сан берілген. Теріс сандарды квадраттау және оң сандарыдың үштың дәрежесін табу (0 санын өзгертпеу).

  2. X, Y, Z айнымалардың мәндері берілген. Олардың мәндерін өсу тәртібі бойынша қалыптастыру.

  3. X, Y, Z айнымалардың мәндері берілген. Олардың мәндерін кему тәртібі бойынша қалыптастыру.

  4. A мен B бүтін типті айнымалары берілген. Егер олардың мәндері тең болмаса, онда әр айнымалыға сол мәндердің қосындысын меншіктеу, ал егер тең болса – онда нөльдік мәнін меншіктеу.

  5. X, Y, Z айнымалардың мәндері берілген. Егер олардың мәндері кему тәртібі бойынша реттелінген болса, онда оларді екесе өсіру; егер басқаша болса - әр айнымаланың мәнін кері санына ауыстыру.

  6. X, Y, Z айнымалардың мәндері берілген. Егер олардың мәндері өсу немесе кему тәртібі бойынша реттелінген болса, онда оларді екесе өсіру; егер басқаша болса - әр айнымаланың мәнін кері санына ауыстыру.

  7. Нүктенің бүтін координаталары берілген. Егер нүкте координаттық осьтерінде жатпайтын болса, онда 0 шығару. Егер нүкте координаталар басымен сәйкес келсе – 1 шығару. Егер нүкте координаталар басымен сәйкес келмесе, бірақ OX немесе OY осьтерінде жатса, онда 2 немесе 3 шығару.

  8. OX пен OY координаттық осьтерінде жатпайтын нүктенің нақты координаталары берілген. Берілген нүкте жатқан координаталар бөлігінің нөмірін шығару.

  9. Сандық осьте A, B, C үш нүктесі орналасқан. (B немесе C) соңғы екі нуктенің қайсысы А –ға жақын орналасқанын анықтау, сонымен бірге сол нүктені және А нүктесінен ара-қашықтығын шығару.

  10. Төрт бүтін сан берілген, онын ішінде бір сан басқа үш саннан айырмашылығы бар (олар бір біріне тең). Сол санның нөмірін шығару.

  11. Бір жылдың нөмірі берілген (бүтін оң сан). Оған сәйкес келетін ғасырдың нөмірін шығару (20 ғасырдың басы 1901 жыл болып есептеледі).

  12. Бір жылдың нөмірі берілген (бүтін оң сан). Сол жылдың күндерінің санын шығару (жәй жылында 365 күн болса, толық жылында – 366 күн болады, ол әрі 4 жылда қайталанып тұрады).

  13. -999 ден 999 диапазонында жатқан бүтін сан берілген. "Екі таңбалы теріс саны ", "нөлдік саны", "бір таңбалы оң саны" және т.б. түрлі санның ауызша сипаттамасына ие болған жолды шығару.

  14. 1 ден 9999 диапазонында жатқан бүтін сан берілген. "Екі таңбалы жұп саны ", "төрт таңбалы тақ саны" және т.б. түрлі санның ауызша сипаттамасына ие болған жолды шығару.

  15. Х пен Y сандары берілген. Егер X<0 және Y<0, онда олардың әрқайсысын олардың модуліне ауыстыру. Егер оның бірі ғана теріс болса, олардың әрқайсысын 0,5-ке өсіру. Егер екеуінің ешқайсы да теріс болмаса және [0,5; 2] аралыққа жатпаса, оларды 10 есеге азайту. Қалған жағдайларда оларды еш өзгеріссіз қалтыру.

2– тапсырма. CASE таңдау операторды қолдана отырып әр вариантына байланысты алгоритмнің блок-схемасын құру және программасын жазу.

Тапсырмалар варианттары:

  1. Айдың нөмірі берілген (1 —қантар, 2 — ақпан, ...). Сәйкесті жылдың уақыттарының атын шығару ("қыс", "көктем" және т.б.).

  2. Айдың нөмірі берілген (1 —қантар, 2 — ақпан, ...). Толық емес жыл үшін берілген айындағы күндердің санын шығару.

  3. 0 – 9 диапазонындағы бүтін сан берілген. (0 — "нөл", 1 — "бір", 2 — "екі", ...) сәйкесті санның атын жазып жолды шығару.

  4. Сандарға арналған арифметикалық амалдары келесі түрде нөмірленген: 1 —қосу, 2 —азайту, 3 — көбейту, 4 — бөлу. A мен B (В нөлге тең емес) сандар мен амалдың нөмірі берілген.Сол сандарға керекті амалдарын орындап нәтижесін шығару.

  5. Ұзындық бірліктері келесі түрде нөмірленген: 1 — дециметр, 2 — километр, 3 — метр, 4 — миллиметр, 5 — сантиметр. Ұзындық бірліктерінің нөмірлері және L қиындының ұзындығы (нақты сан) берілген. Берілген қиындының ұзындығын метрлеп шығару.

  6. Масса бірліктері келесі түрде нөмірленген: 1 — килограмм, 2 — миллиграмм, 3 — грамм, 4 — тонна, 5 — центнер.. Масса бірліктерінің нөмірлері және М массасы (нақты сан) берілген. Берілген массаны килограмм арқылы шығару.

  7. Робот келесі төрт бағытында қозғалады: ("С" — солтүстік, "З" — батыс, "Ю" — оңтүстік, "В" — шығыс) және 3 цифрлі командаларын қолданады: 0 — қозғалуді жалғастыру, 1 — солға бұру, –1 — оңға бұру. C символы — роботтың бастапқы бағыты және  N саны — оған берілген команда. Берілген команданы орындаған сон роботтың бағытын шығару.

  8. Локатор әлемнің бір жағына бағытталған ("С" — солтүстік, "З" — батыс, "Ю" — оңтүстік, "В" — шығыс) және 3 цифрлі командаларын қолданады: 1 — солға бұру, 2 — оңға бұру, 3 — 180 градуске бұру. C символы —локатордың бастапқы бағыты және  N1 мен N2 саны — оған берілген командалар. Берілген команданы орындаған сон локатордың бағытын шығару

  9. Шеңбер элементтері келесі түрде нөмірленген: 1 — радиус (R), 2 — диаметр (D), 3 — ұзындық (L), 4 — шеңбердың ауданы (S). Элементтерінің біреуінін нөмірімен оның мәні берілген. Шеңбердың қалған элементтерінің мәндерін шығару (Pi =3.14).

  10. Тік бүйірлі үшбұрыштың элементтері келесі түрде нөмірленген: 1 —катет (a), 2 — гипотенуза (c), 3 — гипотенузаға түскен биіктік (h), 4 — ауданы (S). Элементтерінің біреуінін нөмірімен оның мәні берілген. Үшбұрыштың қалған элементтерінің мәндерін шығару .

  11. Тең бүйірлі үшбұрыштың элементтері келесі түрде нөмірленген: 1 — бүйірі (a), 2 — ішінде сызылған шеңбердың радиусі (R1), 3 — сыртында сызылған шеңбердың радиусі (R2), 4 — ауданы (S). Элементтерінің біреуінін нөмірімен оның мәні берілген. Үшбұрыштың қалған элементтерінің мәндерін шығару

  12. Екі бүтін сан берілген: D (күн) және M (ай) толық жылдың дұрыс датасын анықтайтын. Берілген датаның алдындағы датаға  D мен M мәтіндерін шығару.

  13. 20 – 69 диапазондағы жасын анықтайтын бүтін сан берілген. Жолды шығару — берілген жастын ауызша сипаттамасын (мысалы, 20 – «жиырма жас»).

  14. 100-999 диапазондағы бүтін сан берілген. Жолды шығару — берілген сөздің ауызша сипаттамасын, мысалы: 256 — "екі жүз елу алты" және т.б.

  15. Шығыс календарінда 60-жастық цикл қолданылады, ол 12-ішкіциклдан тұрады (олар келесі түстермен белгіленген: көк, қызыл, сары, ақ және қара. Әр ішкіциклдің ішіндегі жылдар айуандардың аттарымен аталады: егеуқұйрық (крыса), сиыр, жолбарыс, қоян, айдаһар, жылан, жылқы, қой, мешін, тауық, ит және доңыз. Жылдың нөмірі бойынша оның атын шығару (1984 жыл циклдың басы болып табылады – көк егеуқұйрықтың жылы).

Негізгі әдебиет:1 [77-85, 14-37], 3 [14-39], 4 [4-6].

Қосымша әдебиет: 3 [6-58], 2 [95-106].

3– тақырып. Циклдық есептеу процесстерін программалау.

Әдістемелік ұсыныс: FOR, WHILE және REPEAT операторларын қолдана отырып есеп шығару. Қосыныдының кезекті мүшесі және оның модулі е-ден кіші болса. Алгоритмнің блок-схемасын құру және программасын жазу.

Тапсырмалар варианттары:

1. А (> 1) нақты сан берілген. 1 + 1/2 + ... + 1/N қосындысы А санның үлкен болғандағы N сандардын арасындағы ең кіші санды шығару, сонымен бірге сол қосындыны шығару.

2.  А (> 1)нақты сан берілген. 1 + 1/2 + ... + 1/N қосындысы А санның үлкен болғандағы N сандардын арасындағы ең үлкен санды шығару, сонымен бірге сол қосындыны шығару.

3.  N (> 0) бүтін сан берілген. 1·2·...·N көбейтіндісін шығару. Бүтінсандық аса толуы болмау үшін оны нақты айнымалы арқылы есептеу және оны нақты сан ретінде шығару керек.

4.  N (> 0) бүтін сан берілген. Егер N – тақ сан болса 1·3·...·N көбейтіндісін шығару; егер N – жұп сан болса - 2·4·...·N көбейтіндісін шығару. Бүтінсандық аса толуы болмау үшін оны нақты айнымалы арқылы есептеу және оны нақты сан ретінде шығару керек.

5.  N (> 0) бүтін сан берілген. 2 + 1/(2!) + 1/(3!) + ... + 1/(N!) қосындысын табу (N! – «N-факториал» - 1 ден N бүтін сандардың көбейтіндісын белгілейді: N! = 1·2·...·N). Алынған сан e = exp(1) (= 2.71828183...) тұрақтыға жуықталған сан болып табылады.

6.  Х нақты сан мен N (> 0) бүтін сан берілген. 1 + X + X2/2! + ... + XN/N! (N! = 1·2·...·N) шығару. Алынған сан Х нүктесіндегі exp функциясына жуықталған сан болып табылады.

7.  Х нақты сан мен N (> 0) бүтін сан берілген. X – X3/3! + X5/5! – ... + (–1)NX2N + 1/(2N+1)! (N! = 1·2·...·N) шығару. Алынған сан Х нүктесіндегі sin функциясына жуықталған сан болып табылады.

Негізгі әдебиет:1 [77-85, 14-37], 3 [14-39], 4 [4-6].

Қосымша әдебиет: 3 [6-58], 2 [95-106].

4– тақырып. Бірөлшемді массивтерді өңдеу.

Әдістемелік ұсыныс: Вариантта көрсетілгендей бір өлшемді массивті өңдеуді жүзеге асыру. Алгоритмнің блок-схемасын құру және программасын жазу.

Тапсырмалар варианттары:

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

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

  3. Нөлдік емес бүтін саннан құралатын жиымы берілген, оның аяқталу белгісі – 0 саны. Сол жиымдағы барлық элементтерінің санын шығару.

  4. Нөлдік емес бүтін саннан құралатын жиымы берілген, оның аяқталу белгісі – 0 саны. Сол жиымдағы барлық оң сандардың қосындысын шығару. Егер жиымда ондай сан болмаса, 0-ді шығару.

  5. Нөлдік емес бүтін саннан құралатын жиымы және К бүтін сан берілген, оның аяқталу белгісі – 0 саны. Сол жиымдағы барлық К-дан кіші санын шығару

  6. Нөлдік емес бүтін саннан құралатын жиығы және К бүтін сан берілген, оның аяқталу белгісі – 0 саны. Сол жиымдағы К-дан үлкен бірінші кездескен санның нөмірін шығару. Егер ондай сан болмаса - 0 шығару.

  7. Нөлдік емес бүтін саннан құралатын жиымы және К бүтін сан берілген, оның аяқталу белгісі – 0 саны. Сол жиымдағы К-дан кіші ең соңғы кездескен санның нөмірін шығару. Егер ондай сан болмаса - 0 шығару

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

  9. N бүтін сан мен N нөлдік емес бүтін саннан құралатын жиымы берілген. Сол жиымдағы өзінен сол жақта тұратын элементтерінен үлкен элементтерінін нөмірін және К сондай сандардың көлемін анықтау.

  10. N бүтін сан мен N нақты саннан құралатын жиымы берілген. Сол жиым өсу тізбелік болып табылатынын анықтау. Егер ол сол тізбектілік болса - True шығару, егер ол болмаса—  False шығыру.

  11. N бүтін сан мен N нақты саннан құралатын жиымы берілген. Сол жиым кему тізбелік болып табылатынын болса, онда 0 шығару; егер ол болмаса—  сол заңдылықты бұзатын бірінші элементінің нөмірін шығыру.

  12. N бүтін сан мен N нақты саннан құралатын жиымы берілген, оның құрамында кемінде екі нөль болу керек. Сол жиымдағы бірінші кездескен екі нөльдердің арасындағы сандардың қосындысын табу (егер ол нөльдер қатар тұрса – 0 шығару).

  13. N бүтін сан мен N нақты саннан құралатын жиымы берілген, оның құрамында кемінде екі нөль болу керек. Сол жиымдағы соңғы кездескен екі нөльдердің арасындағы сандардың қосындысын табу (егер ол нөльдер қатар тұрса – 0 шығару).

  14. К, N бүтін сандар мен N нақты саннан құралатын жиымы берілген: A1, A2, ..., AN. Берілген жиымның сандарының К-дәрежелерін табу: A1К, A2К, ..., ANК.

  15. N бүтін сан мен N нақты саннан құралатын жиымғы берілген: A1, A2, ..., AN. Келесі сандарды шығару: A1, A22,, ..., AN–1N–1, ANN.

  16. N бүтін сан мен N нақты саннан құралатын жиымғы берілген: A1, A2, ..., AN. Келесі сандарды шығару: A1N, A2N–1, ..., AN–12, AN.

  17. 10 өлшемді массив берілген. Массивтің минимальды оң мен максимальды теріс элементтерінің шығару. Егер ондай сан болмаса - 0 шығару

  18. 10 бүтін нөльдік емес элементтерінен құралатын массив берілген. Берілген элементтерінің арасынан минимальды жұп және максимальды тақ элементін табу. Егер ондай сан болмаса - 0 шығару

  19. 10 элементтен тұратын жиым мен a, b (0 < a < b) сандар берілген. (a, b) аралығында орналасқан элементтердің арасында минимальды мен максимальды элементтерін шығару. Егер ондай элементтер табылмаса – 1 шығару.

  20. 10 элементтен тұратын жиым берілген. Массивтің соңғы максимальды элементтінің алдында орналасқан элементтерін санын табу.

Негізгі әдебиет:1 [37-43, 97-99], 2 [123-132], 3 [42-59], 4 [7-11].

Қосымша әдебиет: 2 [95-106].

5– тақырып. Екі өлшемді массивтерді өңдеу.

Әдістемелік ұсыныс: Вариантта көрсетілгендей екі өлшемді массивті өңдеу алгоритмнің блок-схемасын құру және программасын жазу.

Тапсырмалар варианттары:

  1. M x N өлшемді матрица берілген. Өз жолында максимальді және өз бағанасында минимальді элементін табу. Егер ондай элемент болмаса - 0 шығару.

  2. M x N өлшемді матрица берілген. Элемент жергілікті минимумы (максимумы) болып табылады, егер ол айналысындығы элементтерден кіші (үлкен) болса. Берілген матрицаның барлық жергілікті минимумдарын нөльге ауыстыру.

  3. M x N өлшемді матрица берілген. Элемент жергілікті минимумы (максимумы) болып табылады, егер ол айналысындығы элементтерден кіші (үлкен) болса. Берілген матрицаның барлық жергілікті максимумдарын нөльге ауыстыру.

  4. M x N өлшемді матрица берілген. Оның жолдарын келесі тәртібімен өзгерту: минимальді элементтері өсу тізбегін құрады.

  5. M x N өлшемді матрица берілген. Оның бағаналарын келесі тәртібімен өзгерту: максимальді элементтері кему тізбегін құрады.

  6. 5 x 9 өлшемді матрица берілген.Оның барлық тақ жолындағы элементтерінің қосындысын табу

  7. 5 x 10 өлшемді матрица берілген. Әр бағанада оның барлық элементтерінің арифметикалық орташасынан кіші элементтерінің санын табу.

  8. 5 x 10 өлшемді матрица берілген. Оның барлық жолындағы элементтерінің қосындысының , арасындағы максимальды мәнін анықтап сол жолдың нөмірін шығару.

  9. M x N өлшемді бүтінсандық матрицасы берілген. Матрицаның әртүрлі жолын (бағанасын) ұқсас деп атаймыз, егер сол жолдарда (бағаналарда) кездесетін сандардың жиындары сәйкес келсе. Оның бірінші жолына ұқсайтын жолдардың санын табу.

  10. M x N өлшемді бүтінсандық матрицасы берілген. Оның бағаналарындағы барлық элементтері әртүрлі болған бағаналардың санын шығару.

  11. M x N өлшемді бүтінсандық матрицасы берілген. Оның бірдей элементтердің максимальды санынан тұратын соңғы бағананың нөмірін шығару.

  12. M квадратты матрицасы берілген. Оның басты диагоналіна параллельді жатқан әр диагональдың минимальды элементің шығару ( A[1,M] бірэлементтік диагональдан бастап).

  13. M квадратты матрицасы берілген. Басты диагональдан бастап одан төмен жатқан және қосымша диагональдан бастап одан жоғары орналасқан элементтерін нөлге ауыстыру.

  14. 5 x 10 өлшемді матрица берілген. Оның жолындағы элементтері бірқалыпты өскен жолдарының санын табу

  15. 5 x 10 өлшемді матрица берілген. Оның жолындағы элементтері бірқалыпты кемитын жолдарының санын табу

  16. 5 x 10 өлшемді матрица берілген. Оның өсу немесе кему бойынша реттелінген жолдардың арасындағы минимальді элементін табу, егер ондай жолдар болмаса – 0 шығару.

  17. 5 x 10 өлшемді матрица берілген. Оның өсу немесе кему бойынша реттелінген бағаналардың арасындағы максимальді элементін табу, егер ондай жолдар болмаса – 0 шығару.

  18. 5 x 10 өлшемді матрица берілген. Матрицаның максимальды элементі бар жолын жою.

  19. 5 x 10 өлшемді матрица берілген. Матрицаның тек жұп элементі бар соңғы5 x 10 өлшемді матрица берілген. Матрицаның максимальды элементі бар жолын жою.

  20. 4 x 9 өлшемді матрица және k саны берілген. Матрицаның k-нөмірлі бағанадан кейін нөлден құрылған бағананы қою.

Негізгі әдебиет: 4 [92-105].

Қосымша әдебиет: 5 [12-14].

6-тақырып. Символдық мәліметтерді өңдеу.

Әдістемелік ұсыныс: Символдық айнымалылармен жұмыс істеуде стандартты процедуралар мен функцияларды пайдалану. Вариантта көрсетілгендей жолды өңдеу алгоритмнің блок-схемасын құру және программасын жазу.

Тапсырмалар варианттары:

  1. Файлдың толық атынан құралатын жол берілген (дискінің аты, каталогтар тізімі (жолы), файлдың аты мен кеңейтілуі). Сол жолдан файлдың атын бөлектеу.

  2. Файлдың толық атынан құралатын жол берілген. Сол жолдан соңғы каталогтың атын бөлектеу ("\" символдарсыз). Егер файл түбір каталогінде болса, онда "\" символды шығару.

  3. Орыс тілінде жазылған жол-сөйлем және k (0 < k < 10) саны берілген. Әр әріпті сол регистрдің әріпіне циклдіқ алмастыруды орындап жолды шифрлау (ол әріп алфавитте шифрлайтын әріптен k-позициядан кейін орналасады). Мысалы, k=2 болған кезде "А" "В"-ға алмасады, "а" —  "в"-ға, "Б" —  "Г"-ға, "я" — "б"-ға және т.б.). Алфавитте "ё" әріпті есептемеу, тыныс белгілері мен пробелдерды өзгертпеу.

  4. Орыс тілінде жазылған шифрланған сөйлем және оның шифрдан айырылған бірінші симол С берілген (шифрлау әдісі п.3 сипатталған). K кодтық жылжытуды және шифрдан айырылған сөйлемді анықтау.

  5. Жол-сөйлем берілген. Алдымен жұп орнындағы символдарды алып, сосын кері ретінде тақ орындағы символдарды алып сол жолды шифрлау (Мысалы, "Программа" жолы "ргамамроП" жолына ауыстырылады).

  6. Бірнеше жақшасы бар жол берілген. Егер жақшалар дұрыс қойылған болса (әр ашылатын жақшаға жабылатын жақша сәйкес болса), онда нөль шығару. Әйтпегенде бірінші қате жабылатын жақша тұрған позициясынің нөмірін шығару, немесе, жабылатын жақшалар жетпеген кезде – 1 шығару.

  7. 1 ден 30 дейін сөзден құралған тізбек берілген, онда 1 ден 5 дейін бас әріппен жазылған латын әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектен қайтып кіретін сөздерді алып тастап оны шығару.

  8. 1 ден 30 дейін сөзден құралған тізбек берілген, онда 1 ден 5 дейін бас әріппен жазылған латын әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбекте бір рет қана кездесетін сөздерін шығару.

  9. 1ден 30 дейін сөзден құралған тізбек берілген, онда 1 ден 5 дейін бас әріппен жазылған латын әріптері бар;көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздерін шығару, оның тізбекке кіретін санын анықтау.

  10. 1 ден 30 дейін сөзден құралған тізбек берілген, онда 1 ден 5 дейін бас әріппен жазылған латын әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте.Сол тізбектегі барлық сөздерді алфавит тәртібіне келтіріп шығару (өсу ретінде).

Негізгі әдебиет:1 [107-109], 2[135-140], 3 [154-165].

Қосымша әдебиет: 4 [57-82].

7–тақырып. Жолдық мәліметтерді өңдеу.

Әдістемелік ұсыныс: Вариантта көрсетілгендей жолдармен жұмыс істеу үшін алгоритмнің блок-схемасын құру және программасын жазу. Жолдармен жұмыс істеу үшін стандартты процедуралар мен функцияларды пайдалану.

Тапсырмалар варианттары:

1. 1 ден 30 дейін сөзден құралған тізбек берілген, онда 1 ден 5 дейін бас әріппен жазылған латын әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздерді алфавит тәртібіне келтіріп кері ретінде шығару.

2. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздерді соңғы сөзге ұқсас болмауы керек, сонымен бірге әр сөздің бірінші әріпін соңына жаза отырып шығару.

3. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар;көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте.Сол тізбектегі барлық сөздерді соңғы сөзге ұқсас болмауы керек, сонымен бірге әр сөздің соңғы әріпін алдына жаза отырып шығару.

4. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте.Сол тізбектегі барлық сөздерді соңғы сөзге ұқсас болмауы керек, сонымен бірге әр сөздің бірінші әріпін алып тастап шығару.

5. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздері соңғы сөзге ұқсас болмауы керек, сонымен бірге әр сөздің соңғы әріпін алып тастап шығару.

6. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздері соңғы сөзге ұқсас болмауы керек, сонымен бірге бірінші әріптің сөзге келесі кірулерін жою тәртібі бойынша шығару.

7. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздері соңғы сөзге ұқсас болмауы керек, сонымен бірге соңғы әріптің сөзге алдындағы кірулерін жою тәртібі бойынша шығару.

8. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздері соңғы сөзге ұқсас болмауы керек, сонымен бірге сөзде тек әр әріптің бірінші кірулерін ғана қалтыру тәртібі бойынша шығару.

9. 2 ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар; көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте. Сол тізбектегі барлық сөздері соңғы сөзге ұқсас болмауы керек, сонымен бірге егер сөздің ұзындығы тақ болса оның орталық әріпін алып отырып шығару

10. 2ден 30 дейін сөзден құралған тізбек берілген, онда 2 ден 10 дейін кіші әріппен жазылған орыс әріптері бар;көршілес сөздердің арасында – үтір, соңғы сөзден кейін - нүкте.Сол тізбектегі барлық сөздерды соңғы сөзге ұқсас болмауы керек, сонымен бірге егер сөздің ұзындығы жұп болса оның бірінші әріпін алып отырып шығару.

Негізгі әдебиет: 1 [107-109], 2 [135-140], 3 [154-165].

Қосымша әдебиет: 4 [57-82].

8– тақырып. Процедураларды қолданып, программалар құру.

Әдістемелік ұсыныс: Вариантта көрсетілгендей жолды өңдеуді жүзеге асыру. Процедураларды қолданып, есеп шешу үшін алгоритмнің блок-схемасын құру және программасын жазу. Төменде көрсетілген тапсырмаларды программалау кезінде кейбір жағдайларда тапсырманың өзін процедура немесе функция ретінде программалау және программаның сәйкесінше өздік фрагменттерін сипаттау ұсынылады.

Тапсырмалар варианттары:

  1. N нақты сандардан тұратын А массивтің өсу ретінде іріктеуді орындайтын SortInc(A,N) процедурасын сипаттау. А массиві енгізу және шығару параметрі болып табылады. Сол процедура көмегімен NA, NB, NC өлшемді A, B, C массивтерін іріктеу.

  2. N нақты сандардан тұратын А массивтің кему ретінде іріктеуді орындайтын SortDec(A,N), процедурасын сипаттау. А массиві енгізу және шығару параметрі болып табылады. Сол процедура көмегімен NA, NB, NC өлшемді A, B, C массивтерін іріктеу.

  3. M x N өлшемді нақты матрицаның k1 мен k2 нөмірлерімен (егер k1 немесе k2 M-н үлкен болса, онда матрица өзгермейді)А нақты матрицасының жолдарын ауыстыратын SwapLine(A,M,N,k1,k2) процедурасын сипаттау. Екі өлшемді массив – енгізу мен шығару параметрі, басқа параметрлер – енгізу. Сол процедураны қолдана отырып M x N өлшемді матрицасының k1 мен  k2 нөмірлі жолдарды ауыстыру. 

  4. M x N өлшемді нақты матрицаның k1 мен k2 нөмірлерімен (егер k1 немесе k2 M-н үлкен болса, онда матрица өзгермейді)А нақты матрицасының бағаналарын ауыстыратын SwapCol(A,M,N,k1,k2),) процедурасын сипаттау. Екі өлшемді массив – енгізу мен шығару параметрі, басқа параметрлер – енгізу. Сол процедураны қолдана отырып M x N өлшемді матрицасының k1 мен  k2 нөмірлі бағаналарды ауыстыру. 

  5. М ретті А квадратты нақты матрицаның транспондауын орындайтын Transp(A,M) процедурасын сипаттау. Екі өлшемді массив – енгізу мен шығару параметрі, М – енгізу параметрі

Берілген М ретті А матрицасының трансподау үшін сол процедураны қолдану.

  1. M x N өлшемді А нақты матрицаны келесі тұрде өзгертетын: i1 жолынан i2 жолы шегерленеді (Х нақты санына көбейтіле отырып) k1 мен k2 нөмірлерімен (егер k1 немесе k2 M-н үлкен болса, онда матрица өзгермейді) Gauss(A,M,N,i1,i2,X) процедурасын сипаттау. Екі өлшемді массив – енгізу мен шығару параметрі, басқа параметрлер – енгізу. Сол процедураны қолдана қосымша ретінде бірінші жолды пайдалана отырып M x N өлшемді А матрицасының k-бағаналардың элементтерін нөлге ауыстыру1 мен  k2 нөмірлі бағаналарды ауыстыру (A[1,k] <> 0). 

  2. M x N өлшемді А нақты матрицадан жолмен бағананы жоятын DelIJ(A,M,N,i,j) процедурасын сипаттау, егер оларда A[i,j] элементі болса (егер i > M немесе j > N, онда матрица өзгермейді). Екі өлшемді массив және бүтін сандар M (> 1), N (> 1) – енгізу мен шығару параметрі, i мен j – енгізу параметрлері. M x N өлшемді А нақты матрица мен i, j сандары берілген. DelIJ процедурасын қолдана отырып жаңа матрицаны шығару.

  3. Dist функциясын қолдана отырып (п. 15) Heights(Ax,Ay,Bx,By,Cx,Cy,hA,hB,hC) процедурасын сипаттау(ол АВС үшбұрыштың hA, hB, hC биіктігін табады. Сол функция көмегімен АВС, АВD, ACD үшбұрыштың биіктігін табу (A, B, C, D нүктклкрдің координаталары берілген).

Негізгі әдебиет: 1[161-181].

Қосымша әдебиет: 5 [16-19], 10 [104-116], 11 [187-211].

9– тақырып. Процедураларды қолданып, программалар құру.

Әдістемелік ұсыныс: Функцияларды қолданып, есеп шешу үшін алгоритмнің блок-схемасын құру және программасын жазу.

Тапсырмалар варианттары:

1. M x N өлшемді матрицаның нормасын есептейтын Norm1(A,M,N) нақты типті функциясын сипаттау: Norm1(A,M,N) = max {|A[1,j]| + |A[2,j]| + ... + |A[M,j]|},

мұнда максимум барлық j  1 ден N дейын алынады. Берілген А матрицасы үшін Norm1(A,k,N), k = 1,...,M табу.

2. M x N өлшемді матрицаның нормасын есептейтын Norm2(A,M,N)) нақты типті функциясын сипаттау: Norm2(A,M,N) = max {|A[i,1]| + |A[i,2]| + ... + |A[i,N]|},

мұнда максимум барлық i  1 ден М дейын алынады. Берілген А матрицасы үшін Norm2(A,k,N), k = 1,...,M., табу.

3. M x N өлшемді нақты матрицаның k-жолындағы элементтерінің қосындысын есептейтын SumLine(A,M,N,k) нақты типті функциясын сипаттау (егер k > M болса, онда функция 0 қайтарады). Берілген А матрица және үш k-мәліметтері үшін SumLine(A,M,N,k) табу.

4. M x N өлшемді нақты матрицаның k-бағанасындағы элементтерінің қосындысын есептейтын SumCol(A,M,N,k) нақты типті функциясын сипаттау (егер k > N болса, онда функция 0 қайтарады). Берілген А матрица және үш k-мәліметтері үшін SumCol(A,M,N,k).табу

5. АВ қиындының ұзындығын оның сонғы нүктклерінің координаталарымен табылатын: |AB| = sqrt((Ax-Bx)2 + (Ay-By)2) (Ax, Ay, Bx, By (нақты параметрлер) Otr(Ax,Ay,Bx,By) функциясын сипаттау. Сол функция көмегімен  AB, AС, AD кескіндердің ұзындығын табу (A, B, C, D нүктклкрдің координаталары берілген).

6. Otr функциясын қолдана отырып (п. 12) Perim(Ax,Ay,Bx,By,Cx,Cy) функциясын сипаттау(ол (Ax, Ay, Bx, By, Cx, Cy төбелердің координаталарымен (нақты тип)АВС үшбұрыштың периметрін табады. Сол функция көмегімен  ABC, ABD, ACD үшбұрыштардың периметрін табу(A, B, C, D нүктелердің координаталары берілген).

7. Otr пен Perim функциясын қолдана отырып (п. 12, 13) Area(Ax,Ay,Bx,By,Cx,Cy) функциясын сипаттау(ол Герон формуласы бойынша АВС үшбұрыштың ауданын есептейді: SABC = sqrt(p·(p–|AB|)·(p–|AC|)·(p–|BC|)), мұнда p —жартыпериметр. Сол функция көмегімен  ABC, ABD, ACD үшбұрыштардың ауданын табу(A, B, C, D нүктклкрдің координаталары берілген).

8. Otr пен Area функциясын қолдана отырып (п. 12, 14) Dist(Px,Py,Ax,Ay,Bx,By,D) функциясын сипаттау(ол D = 2SPAB / |AB| (мұнда SPAB —PAB үшбұрыштың ауданы) формуласы бойынша Р нуктесінен АВ төлінедейынгі D ара-қашықтығын табады. Сол функция көмегімен  Р нуктесінен AB, AС, ВC дейын ара-қашықтықты табу (Р, A, B, C нүктклкрдің координаталары берілген).

9. y(0) = 1,    y(n+1) = y(n) – (y(n) – x / y(n)k–1) / k (мұнда y(n) SqrtK(x,k,n) анықтайды) формула   бойынша k-дәрежелі түбірдің жуықталған мәндерін табатын SqrtK(x,k,n) рекурссивті функцияны сипаттау (мұнда x — нақты параметр, k мен n — бүтін; x > 0, k > 1, n > 0). Сол процедураның көмегімен Х пен К мәліметтеріне алты әртүрлі N бойынша Х-тан алынған k дәрежелі жуықталған мәнді алу.

10. N –өлшемді А массивтін цикл операторларын қолданбай минимальды элементің табатын MinRec(A,N) рекурссивті функцияны сипаттау. MinRec функциясының көмегімен NA, NB, NC өлшемді A, B, C массивтерінің минимальды элементтерін табу.

11. S жолындағы цикл операторларын қолданбай элементтердің санын табатын Digits(S) рекурссивті функцияны сипаттау. Сол функциясының көмегімен берілген 5 жолындағы элементтерінің санын табу.

12. S жолындағы симметриялық болатының цикл операторларын қолданбай тексеретін Simm(S) рекурссивті функцияны сипаттау. Сол функциясының көмегімен берілген 5 жолын тексеру.

Негізгі әдебиет:1 [161-181].

Қосымша әдебиет: 5 [16-19], 6 [104-116], 7 [187-211].

10– тақырып. Жазбаларды қолданып, программаларды құру.

Әдістемелік ұсыныс: Берілген структураға сәйкесті жазбалар массивті құру. Жазбалардың енгізуін және өңдеуін жүзеге асыру. Программада кіріс деректерді, дереқ қордын файлдарын еңгізу-шығаруын өңдейтын сәйкесті процедуралар мен функциялары алдын ала қаралыстыруы қажет. Қолданушының әрекеттері бақылану және нақты хабарлармен қамдаулану керек.

Тапсырмалар варианттары:

1-9 варианттары

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

Сұраныстар:

1. Екіден әлденеше банкіде есепшотына ие болған клиенттерді анықтау.

2. Қай банкіде жылдық паизы ең үлкенін анықтау.

3. Қай банкіде жылдық паизы ең азын анықтау.

4. Қай елде (мемлекетте) ең көп банкісі барын анықтау.

5. Қай клиент банкіде ең үлкенін салымына ие болғанын анықтау

6. Қай елде (мемлекетте) ең аз банкісі барын анықтау.

7. Қай клиент банкіде ең аз салымына ие болғанын анықтау.

8. Қай елде қанша банкісі барын анықтау.

9. Қай банкіде ең көп клиенті барын анықтау

10-26 варианттары

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

Сұраныстар:

  1. Сату көлемі ең жоғары болған фирманы анықтау.

  2. Сатылган тауардың суммалық өзіндік құннің анықтау.

  3. Таза максимальды табысы бар фирманы анықтау.

  4. Сатылган тауардан түскен барлық фирмалардың суммалық табысын анықтау.

  5. Ең рентабельді қызметтың типін анықтау (таза табыс көрсеткішіне сүйене отырып).

  6. Минимальды шығынмен қызметтың типін анықтау.

  7. Қай фирманың таза табысы барлық фирмалар бойынша орташа мәнінен жоғары екенін анықтау.

  8. Қай фирманың шығындары оның таза табысынан көп болғанын анықтау.

  9. Қай фирманың қызметі автомобильдерді шығару өндірісемен байланысты екенін анықтау.

  10. Қай фирманың қызметі халықтық тұтыну тауарларды сатуға арналғанын анықтау.

  11. Қай фирманың қызметі рекламаны шығару өндірісемен байланысты екенін анықтау.

Негізгі әдебиет: 1[104-108].

Қосымша әдебиет: 5 [19-22],6 [95-99],7 [321-338].

11– тақырып. Жиындар.

Әдістемелік ұсыныс: Келесі еспетерді шығару үшін жиындар типін қолдана отырып, программаларды жазу. Есепті шығару барысында жиындарға арналған операцияларды қолдану.

Тапсырмалар варианттары:

        1. Кіші латын әріптермен жазылған мәтін берілген, соңында нүктесі бар. Берілген ретін сақтап әріптердің мәтінге бірінші кірулерін шығару,

        2. Кіші латын әріптермен жазылған мәтін берілген, соңында нүктесі бар. Мәтінге екіден кем емес рет кірген әріптерді шығару.

        3. Кіші латын әріптермен жазылған мәтін берілген, соңында нүктесі бар. Әріптердің мәтінге бірақ рет кірулерін шығару

        4. Мәтін берілген, соңында нүктесі бар. Барлық мәтінге кіретін сөздердегі дауысты орыс әріптерін (а, е, и, о, у, ы, э, ю, я ) алфавиттік ретінде шығару.

        5. Кіші орыс әріптермен жазылған мәтін берілген,көршілес әріптердің арасында үтір бар, соңында нүктесі бар. Барлық сөздерге кіретін дауысты әріптерін алфавиттік ретінде шығару.

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

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

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

        9. Кіші орыс әріптермен жазылған сөздерден құралған тізбек берілген,көршілес әріптердің арасында үтір бар, соңында нүктесі бар. Тек бір сөзге кіретін дауыссыз әріптерді алфавиттік ретінде шығару.

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

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

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

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

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

        15. Белгілі мәтін берілген, соңында нүктесі бар. Сол мәтін “Формула” жазбасы болатынын анықтау:

< формула > = < терм > | (< формула > < белгі > < формула >)

белгі = +|-|*

< терм > = < аты > | < бүтін >

< аты > = < әріп > | <аты > < әріп > | <аты > < сан >

< бүтін > = < сан > | < бүтін > < сан >

< әріп > = a| b| c| d| e| f| g

< сан > = 0| 1| 2| 3| 4| 5| 6| 7| 8| 9

        1. Орыс сөздерінен құралған мәтін берілген. Оны тасымалдау үшін бәлшектерге бөлу керек. Орыс сөздерің тасымалдау тәртібі:

а) Екі қатар тұрған дауысты әріптерін бөлуге болар, егер оның біріншісінің алдында дауыссыз әріп болса, ал екіншінің артында біреу болсада әріп болса.

б) Екі қатар тұрған дауыссыз әріптерді бөлуге болады, егер оның біріншісінің алдында дауысты әріп тұрса, ал екінші әріптің соңында да ең болмаса бір даусты әріп болса.

в) Егер п. а, б-ні қолданбаса, онда сөздерді келесі кетінде бөлу керек: бірінші бөлігінде бірден көп әріп болып, ол дауысты әріпке аяқталса, ал екінші бөлігінде ең болмаса бір дауысты әріптен тұрса.

        1. Жиындық типті қолдана отырып программаны құру. Келесі куклалар аттарының тізімі бар: "Барби", "Люси", "Катерина", "Светлана", "Марина", "Анжела". Қай куклалар N қыздарында бар екен тұралы ақпарат бар. Әр қызда бар болған куклалардың тізімін беретін программаны құру.

        2. Класстың тізімі берілген (барлық аттар әр тұрлі). Бұл класста барлығында қонақта болған оқушының бар екенін анықтау. Әр оқушыға оның үйінде болған жолдастарының тізімінен жиынды құру, ол өзі сол жиындыға кірмейды.

        3. Берілген натурал санның жазбасына кірмейтін сандарды өсу ретінде шығару.

        4. Әр тақ сөзіне кіретін және бір де бір жұп сөзіне кірмейтін барлық сынғырлаған дауыссыз әріптерін алфавит тәртібі бойынша шығару.

Негізгі әдебиет: 1[108-112].

Қосымша әдебиет: 6 [81-83],7 [322-338].

12– тақырып. Типтелген файлдарды қолданып, программаларды құру.

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

Тапсырмалар варианттары:

  1. f фйлдың компоненттері бүтін, 10 еселі сандар болып табылады. f файлдың компоненттерін g- файлына келесі тәртіп бойынша қайта жазып шығу: әр ондықта саннын тәртібін өзгерте отырып бірінші 3-ке бөлінетін сандар, сосын – 3 –ке бөлінгенде 1 қалдықты беретін сандар, сосын 3-ке бөлгенде 2 қалдығын беретін сандар.

  2. Берілген мәтін бүтін ондық сандардың тізімін береді. Шығатын файлда алдымен 1 ден басталатын сандарды, сосын 2, 3, 4, және т.б. топтау. Егер файлда нөльдер болса, оларды жою.

  3. A мен B квадратты матрицаларының элементтерінен (жол бойынша) тұратын NameA мен NameB екі нақты санды файлдар бар. A·B көбейтіндінің элементтерінен құралған жаңа NameC атты файлды құру. Егер A мен B матрицаларын көбейтуге болмаса, онда NameC файлын бос қалтыру.

  4. Name1 мен Name2 екі нақты санды файлдар берілген, олардың элементтері өсу тәртібі бойынша реттелінген. Name3 файлына реттілігін сақтап екі файлды қосу.

  5. Name1 мен Name2 екі нақты санды файлдар берілген, олардың элементтері кему тәртібі бойынша реттелінген. Name3 файлына реттілігін сақтап екі файлды қосу.

  6. Бүтін санды файл берілген. Одан барлық теріс тақ сандарын жою.

  7. Бүтін санды файл берілген. 5..10 диапазонына жататын сандарын бір рет қайталау.

  8. Бүтін санды нөлдік емес файл берілген. Онда жұп оң сандарды екі нөлге ауыстыру.

  9. Бүтін санды A(i), i = 0, ..., N–1 элементтерімен (N —файлдың размері) файл берілген. Элементтерінің бастапқы орналасуын келесіге ауыстыру:A(0), A(N–1), A(1), A(N–2), A(2), ... 

  10. NameA, NameB и NameC атты өлшемі бірдей бүтін санды үш файл берілген. NameD атты жаңа файлды құру, мұнда бастапқы (берілген) файлдың элементтері сол баяғы бір нөмірімен алмасып (кезектесіп) тұратын: A0, B0, C0, A1, B1, C1, A2, B2, C2, ... .

Негізгі әдебиет: 1 [119-139].

Қосымша әдебиет: 5 [16-19],6 [87-95], 7 [359-369].

13– тақырып. Мәтіндік файлдарды қолданып, программаларды құру.

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

Тасырмалар варианттары:

  1. Бірдей өлшемі бар Name1 мен Name2 атты екі бүтін санды файлдар берілген.  NameТ жаңа файлды құру, онда сандар 2 бағанада ені 30 сивол арқылы орналасады: біріншісі Name1 файлдан алынған сандарды, ал екіншісі -  Name2 файлдан алынған. Жолдың соңымен басына " | " (код 124) бөлгішін қою. Сандар бағананың сол1|оң2 жағымен тегістеліеді.

  2. Нақты сандардан тұратын үш бағаналы кестесі бар NameT атты мәтіндік файл берілген. Кестедегі бағаналардың ені және оның тегістеу әдістері еркін болып табылады. Арнайы бөлгіш-символдар кестенің құрамында жоқ. Name1, Name2 и Name3 атты нақты сандардан тұратын файлдарды құру, оның әркайсысы кестенің сәйкесті бағанасынан алынған сандардан құралады.

  3. Бүтін сандардан тұратын үш бағаналы кестесі бар мәтіндік файл берілген. Кестедегі бағаналардың ені және оның тегістеу әдістері еркін болып табылады. Кестенің әр жолының басымен соңына және бағаналардың арасына бөлгіш-символдар қойылып шыққан. Бүтін сандардан тұратын файлды құру, ол берілген кестенің әр жолындағы сандардың қосындысынан құралады.

  4. Мәтіндік файл берілген. Символдық файлды құру, оның құрамына мәтінде кездесетін барлық қайталанбайтын символдарді (пробел мен тыныс белгілеріде кіреді) енгізу. Символдарді олардың кодтарының кему тәртібі бойынша орналастыру.

  5. Мәтіндік файл берілген. Символдық файлды құру, оның құрамына мәтінде кездесетін барлық қайталанбайтын символдарді (пробел мен тыныс белгілеріде кіреді) енгізу. Символдарді олардың мәтінде бірінші кездескен реті бойынша орналастыру.

  6. NameT атты мәтіндік файл берілген. Кіші әріппен жазылған ("а"–"я") орыс әріптерін неше рет қайталанғанын есептеу және NameS атты жолдық файлды құру, олардың элементтері келесі түрде орналассын: "<әріп>–<берілген әріптің қайталану саны>". Мәтінге кірмеген әріптерді қоспау керек. Жолдарды әріптердің қайталану санның кему тәртібі бойынша реттеу, ал қайталану санның мәні бірдей болса - әріптердің кодтарының өсуы бойынша реттеу.

  7. N бүтін сан және сол жағымен тегістелінген Name1 атты мәтіндік файл берілген. Ені N позициядан аспайтындай және мәтінді оң жағымен тегістеп файлды форматтау. Жолдың соңындағы пробелдерды жою. Форматталган мәтінді жаңа Name2 файлында сақтау.

  8. N бүтін сан және сол жағымен тегістелінген Name1 атты мәтіндік файл берілген. Оның абзацтары бір бірімен бос жол арқылы бөлінген. Ені N позициядан аспайтындай және мәтінді сол жағымен тегістеп файлды форматтау. Жолдың соңындағы пробелдерды жою. Форматталган мәтінді жаңа Name2 файлында сақтау.

  9. Орыс тілінде жазылған мәтін және 10 саннан тұратын К-жолы берілген. Жолдың i-позициясында тұратын әр әріпті сол регистрдің әріпіне циклдіқ алмастыруды орындап файлды шифрлау (ол әріп алфавитте шифрлайтын әріптен K[i]-позициядан кейін орналасады; К жолының символдары да цикл бойынша іріктелінеді: i = 11 үшін қайтып K[1] алынады және т.б ). Алфавитте "ё" әріпті есептемеу, тыныс белгілері мен пробелдерды өзгертпеу.

  10. Орыс тілінде жазылған мәтін және S1-жолы берілген. Мәтін келесі ереже бойынша шифрланған: жолдың i-позициясында тұратын әр әріпті сол регистрдің әріпіне цикл бойынша алмастырылған (ол әріп алфавитте шифрлайтын әріптен K[i]-позициядан кейін орналасады); К жолының символдары да цикл бойынша іріктелінеді: i = 11 үшін қайтып K[1] алынады және т.б. Алфавитте "ё" әріпті есептемеу, тыныс белгілері мен пробелдерды өзгертпеу. S1 жолы мәтіннің бірінші шифрі ашылған жолы болып табылады. Қалған жолдардың шифрін ашып файлда шифрланған мәтінді шифрі ашылған мәтінге ауыстыру. Егер шифрді ашу үшін ақпарат жеткілікті болмаса, онда берілген файлды өзгертпеу.

Негізгі әдебиет: 1 [119-139].

Қосымша әдебиет: 5 [16-19],6 [87-95], 7 [359-369].

14– тақырып. Динамикалық жады және көрсеткіштер.

Әдістемелік ұсыныс:.Көрсеткіштерді қолдана отырып, есептерді шығару үшін алгоритмді құрып, оның программасын жазу.

Тапсырмалар варианттары:

  1. n натурал саны мен a1, ..., an. нақты сандары берілген. Егер a1, ..., an тізбегі кемімейтін тәртібі бойынша реттелінген болса ( егер a1  a2  …  an ), онда оны өзгеріссіз қалтыру. Басқа кезде an, ..., a1 тізбегін алу.

  2. n натурал саны мен x1, ..., xn. нақты сандары берілген. Есептеу: x1xn + x2xn-1 + … + xnx1.

  3. n натурал саны мен. x1, ..., xn. нақты сандары берілген. Есептеу: (x1 + xn)(x2 + xn-1) … (xn + x1)..

  4. n натурал саны мен x1, ..., xn. нақты сандары берілген. Есептеу: (x1 + x2 + 2xn)(x2 + x3 + 2xn-1) … (xn-1 + xn + 2x2).

  5. n натурал саны мен a1, ..., a2n.. нақты сандары берілген.. Есептеу: (a1 - a2n)(a3 - a2n-2)(a5 - a2n-4) … (a2n-1 - a2)..

  6. n натурал саны мен. a1, ..., a2n. нақты сандары берілген.. Есептеу: a1a2n + a2a2n-1 + … + anan+1..

  7. n натурал саны мен a1, ..., a2n. нақты сандары берілген. Есептеу: min(a1 + an+1, a2 + an+2, …, an + a2n).

  8. n натурал саны мен a1, ..., a2n.. нақты сандары берілген.. Есептеу: max (min(a1, a2n), min(a2, a2n-1), …, min(an, an+1)).

  9. a1 = 1; а2 = 1.5; ai = a[i/2]a[i/3] + 1 (i = 3, 4, ...) болсын. m натурал саны берілген. am табу.

  10. n натурал саны мен a1, ..., an..бүтін сандары берілген. Барлық a1, ..., an арасындағы сәйкес келетін санын анықтау.

Негізгі әдебиет: 1нег[140-156].

Қосымша әдебиет: 5 [28-32],6 [125-146], 8 [161-174].

15– тақырып. Программаларды құру кезінде GRAPH модулін қолдану.

Әдістемелік ұсыныс: GRAPH модулінің функция мен процедураларын, тұрақтыларын қолдана отырып, алгоритм құрып, оның программасын жазу.

Тапсырмалар варианттары:

1. F(x) = arccos x - .[0,1] аралығындағы жауап: x=0.5629.

  1. F(x) = 3*x - 4*ln x - 5. [2,4] аралығындағы жауап: x=3.23.

  2. F(x) = - - 2. [0,1] аралығындағы жауап: x= 0.8814.

  3. F(x) = sin (ln x) - cos(ln x) + 2*ln x . [1,3] аралығындағы жауап: x=1.3749.

  4. F(x) = x - 2 + sin .[1.2,2] аралығындағы жауап: x=1.3077.

  5. Машиненың жүрісі.

  6. Бір біріне допты лақтырып жұрген ойыншылар.

  7. Өсіп тұрған гүл.

  8. Терезелері мен есігі ашылып жабылатын үй.

  9. Кометаның ұшыуы.

Негізгі әдебиет:1 [276-336].

Қосымша әдебиет: 5 [26-27],6 [164-207], 8 [150-160].

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