Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
25
Добавлен:
20.02.2017
Размер:
476.72 Кб
Скачать

1-ші тапсырма

Берілген функцияның х1 және х2 аралығындағы (қадамы һ) мәндерін есептеп экранға таблица ретінде шығарып беретін программа жазу. a, b, c, х1, х2, һ мәндері клавиатурадан енгізу керек. a, b, c, сандары нақты

F=

Есептің алгоритмі

1-тапсырманың блок-схемасы 1-суретте көрсетілген.

1-блок: программаның басы.

2-блок: a, b, c,Х1, Х2, һ-тің мәндері енгізу операторы.

3-блок: х-тің мәнін Х1 айнымалысына меншіктеу операторы.

4-блок: шарт бойынша ұйымдастырушы цикл

5-блок: шартты оператор (1-ші шарт)

6-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

7-блок: шарттың «жалған» болуына байланысты жаңа шартты (2-шарт) енгізу үшін керек.

8-блок және 9-блок: 7 блоктағы шарттың «ақиқат» немесе «жалған» болуына байланысты екеуінің бірі ғана орындаладалуы.

10-блок: a[i,1] массивін х-ке, a[i,2] массивін F-ке тенестіру үшін, х-тің мәні h қадаммен өзгеретінін және циклдың әр айналымында i-дің мәні бірге өсетінін көрсететін оператор.

11-блок: жана n айнымалы арқылы артық қатарларды алып тастау үшін керек.

12-блок: жауапты шығару үшін цикл операторын қолдану

13-блок: х айнымалысының және F функциясының мәндерін экранға шығарады.

14-блок: Х пен F жауаптарын d[i,j] массивіне меншіктеу үшін.

15-блок: d[I,j] массивінің нәтижесін баспаға шығару.

14-блок: программаның соңы.

Есептің жұмысына түсініктеме және орындалу нәтижелері

Есептің тапсырмасы бойынша a, b, c,Х1, Х2, һ мәндерін клавиатурадан енгізу керек. Х1-дің мәнін х-қа теңестірдім, бұл цикл операторын қолдану үшін керек. Цикл x<=x2 деген шартқа дейін айналып отырады. 1-шартты енгіздім, шартты қанағаттандырса у мәнін деген өрнекпен есептейді, шарт жалған болған жағдайда 2-ші шартты енгіздім, шартты қанағаттандырса у мәнін деген өрнекпен есептейді, шарт орындалмағанда а мен х-тің қалған жағдайларын пайдаланып у мәнін деген өрнекпен есептейді. Содан жауапты for циклі арқылы алдым. Writeln арқылы жазғанда жауап тізбегі бірінен кейін бірі экранға шығады. Readln жауапты экранда ұстап тұру үшін керек. Програманы аяқтау үшін end түйінді сөзін қолданамын.

Есептің Паскаль тілінде орындалуы:

Жауабы:

2-ші тапсырманың 1-ші есебі

Берілгені: 1 өлшемді массив ішіндегі модулі бойынша минимал элементті табу керек. Массив элементтерінің типі нақты.

Есептің алгоритмі

2-тапсырманың 1-ші есебінің блок-схемасы 2-суретте көрсетілген.

1-блок: программаның басы.

2-блок: массивтің мәндерін енгізу операторы.

3-блок: меншіктеу операторы арқылы min айналысына массивтің кез келген мәніне теңестіру үшін керек.

4-блок: циклды ұйымдастыру үшін қажет.

5-блок: шартты оператор(/(a[k])/<min)

6-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

7-блок: экранға min мәнін шығару үшін керек.

8-блок: программаның соңы.

Есептің жұмысына түсініктеме және орындалу нәтижелері

Program деген түйінді сөз арқылы бастап, тұрақты шаманы n мәнін енгіздім. Айнамалылар типтерін алдын ала сипаттау керек. Массивті енгізіп, есептің берілгені бойынша массив элементтерінің ішіндегі модулі бойынша ең кішкентай элементті табу үшін min-қа массивтің элементтерін теңестіру керек. Содан цикл ұйымдастыру арқылы шартты (/(a[k])/<min)енгіздім. Шарт қанағаттанғанда массив элементтерінің ең үлкені min-ға теңестіріледі, шарт «жалған» болған жағдайда орындалмай шығып кетеді. Жауапты экранға шығару үшін writeln түйінді сөзін, програманы аяқтау үшін end түйінді сөзін қолданамын.

Есептің шығарылуы:

Жауабы:

2-ші тапсырманың 2-ші есебі

Берілгені: 1 өлшемді массив ішіндегі 1-ші нөлге тең саннан кейінгі сандардың қосындысын табу керек.

Есептің алгоритмі

2-тапсырманың 2-есебінің блок-схемасы 3-суретте көрсетілген.

1-блок: программаның басы.

2-блок: бірөлшемді массивті енгізу операторы.

3-блок: циклды ұйымдастыру үшін қажет.

4-блок: шартты оператор(a[i]=0)

5-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

6-блок: жауапты экранға шығару операторы.

7-блок: циклды ұйымдастыру үшін қажет.

8-блок: шартты оператор(a[i]>0)

9-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

10-блок: жауапты экранға шығару операторы.

11-блок: жауапты шығару үшін цикл операторы қолданылды

12-блок: меншіктеу операторы арқылы шарт қанағанттанған кездегі мәндердін қосындысын табу.

13-блок: экранға қосынды мәнін шығару

14-блок: программаның соңы.

Есептің жұмысына түсініктеме және орындалу нәтижелері

Program деген түйінді сөз арқылы бастап, label белгісін, тұрақты шаманы n мәнін енгіздім. Айнамалылар типтерін алдын ала сипаттау керек. Массивті енгізіп, есептің берілгені бойынша массив ішіндегі 1-ші және 2-ші оң таңбалы массив элементтерінің арасындағы сандардың қосындысын табу үшін цикл операторын қолдандым. Циклдың денесіне шартты (a[i]>0)енгізу арқылы 1-ші оң таңбалы элементтің индексін тауып 1-белгі арқылы жауапты экранға шығару үшін пайдаландым. 2-ші оң таңбалы элементтің индексін анықтау үшін дәл осы операцияны қолдандым, бірақ for цикл операторындағы 1- ші қарастыратын і 2-ден басталды. Алдын ала sum -ны 0-ге теңестірдім. Содан кейін табылған элементердің өзі де қосылмас үшін for цикл операторының қатар бойынша i1+1 –ден i2-1 - ге дейінгі аралықты қамтитын элементтердін қосындысын табатын меншіктеу операторын (sum=sum+a[i]) пайдаландым. Жауапты экранға шығару үшін writeln түйінді сөзін, програманы аяқтау үшін end түйінді сөзін қолданамын.

Есептің шешуі:

Жауабы:

2-ші тапсырманың 3-ші есебі

Берілгені: 1 өлшемді массив ішіндегі элементтерді орындарға орналастыру керек. Шарт бойынша жұп орында тұрған элементтер басында, ал тақ орында тұрған элементтер кейін тұру керек.

Есептің алгоритмі

2-тапсырманың 3-есебінің блок-схемасы 4-суретте көрсетілген.

1-блок: программаның басы.

2-блок: бірөлшемді массивті баспаға шығару.

3-блок: і,j-ші қатар бойынша қайталану операторы (for)

4-блок: цикл денесіндегі шартты оператор

5-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

6-блок: і,j-ші қатар бойынша қайталану операторы (for)

7-блок: цикл денесіндегі шартты оператор

8-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

9-блок: экранға жауапты шығару

10-блок:программаның соңы.

Есептің жұмысына түсініктеме және орындалу нәтижелері

Program деген түйінді сөз арқылы бастап, тұрақты шаманы n мәнін енгіздім. Айнамалылар типтерін алдын ала сипаттау керек. Массивті енгізіп, есептің берілгені бойынша массив ішіндегі жұп орында тұрған элементтер басында, ал тақ орында тұрған элементтер кейін тұруы үшін циклды (for) қолданамыз. Позицияны қалдықпен бөліп тексеру арқылы тақ жұп позицияларды таптым. Циклдың денесіне шартты енгізу арқылы тақ жұп позициларда тұрған мәндерді тауып беріп, олардың орнын ауыстырып отыратын меншіктеу операторларын құрастыру керек. Циклді пайдалана отырып жауапты экранға шығару үшін writeln түйінді сөзін, програманы аяқтау үшін end түйінді сөзін қолданамын.

Есептің шешуі:

Жауабы:

3-ші тапсырманың 1-ші есебі

Берілгені: типі нақты болатын квадраттық матрицаның қатарлары бойынша теріс емес элементтердің қосындысын табу.( функцияны қолдану)

Есептің алгоритмі

3-тапсырманың 1-есебінің блок-схемасы 5-суретте көрсетілген.

1-блок: Программаның басы.

2-блок: екіөлшемді массивті енгізу операторы.

3-блок: і,j бойынша қайталану операторы (for)

4-блок: қайталану операторы(for) құрамындағы меншіктеу операторы

5-блок: меншіктеу операторы,(S=0)

6-блок: баған мен қатар бойынша қайталану операторы

7-блок: цикл денесіндегі шартты оператор(a[i,j]<0)

8-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

9-блок: меншітеу операторы қатарлар бойынша элементтердің қосындысын табуға арналған. Ол арқылы қалған программада функцияның атын жазып оны қолдануға мүмкіндік береді

10-блок: жауапты баспаға шығару

11-блок: программаның соңы

Подпрограмма блок-схемасы 6-сурет көрсетілген.

1-блок: Программаның басы.

2-блок: і,j бойынша қайталану операторы (for)

3-блок: цикл денесіндегі шартты оператор(a[i,j]=0)

4-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор, меншіктеу операторы

5-блок: программаның соңы

Есептің жұмысына түсініктеме және орындалу нәтижелері

Program деген түйінді сөз арқылы бастап, тұрақты шаманы n мәнін енгіздім. Айнамалылар типтерін алдын ала сипаттау керек. Массив ішіндегі қатарлар бойынша элементтердің қосындысын тауып беретіндей алдын ала фунцияны құруға болады. Массивті файл арқылы сақтауға болады. Assign- файлдың орналасқан адресі, reset – соны оқу. Жаңа к айнымалысын пайдаланып оны 0-ге теңестіреміз, баған бойынша цикл ұйымдастырып, шартты (a[i,j]<0)жазамыз, шарт орындалса к 1-ге теңестіріледі. Жаңа шарт(k=0) жазып, ол шарт қанағаттанса алдын ала құрылған функцияны пайдалана отырып жауапты аламыз. Програманы аяқтау үшін end түйінді сөзін қолданамын.

Есептің шешуі:

Жауабы

3-ші тапсырманың 2-ші есебі

Берілгені: типі нақты болатын квадраттық матрицаның басты диагональға параллель диагональдардың элементтер қосындысының ішіндігі минимумын анықтау (процедураны қолдану)

Есептің алгоритмі

3-тапсырманың 2-есебінің блок-схемасы 7-суретте көрсетілген.

1-блок: Программаның басы.

2-блок: і,j бойынша қайталану операторы (for)

3-блок: екіөлшемді массивті енгізу операторы.

4-блок: шартты оператор

5-блок: шарттың «ақиқат» болған жағдайда баспаға шығару операторы

6-блок: шарттың «жалған» болған жағдайда 2-ші шартты оператор

7-блок: шарттың «ақиқат» болған жағдайда баспаға шығару операторы

8-блок программаның соңы

Подпрограмма блок-схемасы 8-сурет көрсетілген.

1-блок: Подпрограмманың басы.

2-блок: j бойынша қайталану операторы (for)

3-блок: цикл денесіндегі шартты оператор

5-блок: шарттың «ақиқат» болған жағдайда орындалатын операторы

6-блок: шарттың «жалған» болған жағдайда орындалатын оператор

7-блок: j бойынша қайталану операторы (for)

8-блок цикл денесіндегі шартты оператор

9-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

10-блок: шарттың «жалған» болған жағдайда 2-ші шартты оператор

11-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

12-блок: шарттың «жалған» болған жағдайда 3-ші шартты оператор

13-блок шарттың «ақиқат» болған жағдайда орындалатын оператор

14-блок: шарттың «жалған» болған жағдайда орындалатын оператор

15-блок: j бойынша қайталану операторы (for)

16-блок цикл денесіндегі шартты оператор

17-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

18-блок: шарттың «жалған» болған жағдайда орындалатын оператор

19-блок: j бойынша қайталану операторы (for)

20-блок цикл денесіндегі шартты оператор

21-блок: шарттың «ақиқат» болған жағдайда орындалатын оператор

22-блок: шарттың «жалған» болған жағдайда орындалатын оператор

23-блок: Подпрограмманың соңы

Соседние файлы в папке РГР 2