Курсовая работа: Составление программ для решения задач на языке программирования Turbo Pascal 2
Название: Составление программ для решения задач на языке программирования Turbo Pascal 2 Раздел: Рефераты по информатике Тип: курсовая работа | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Министерство образования Российской Федерации КФ УГАТУ Кафедра “промышленной автоматики” Курсовая работа по дисциплинам «информатика», «программирование и основы алгоритмизации» на тему «Составление программ для решения задач на языке программирования Turbo Pascal » Кумертау2010
С развитием информатики информация становиться стратегическим ресурсом общества, аналогичным по значимости с запасами сырья, энергии и т.д. Знание и умение использовать технические и программные средства информатики , а также умение правильно применять методы и технологии обработки информации позволяет более эффективно работать специалисту, в любой области в том числе инженеру, экономисту, бухгалтеру и т.д. Информатика является одной из самых быстроразвивающихся направлений развития человеческого общества. После изучения информатики студент должен знать и уметь использовать: - основные способы и формы представления числовой, символьной, графической, звуковой информации, - технические и программные средства информатики. После изучения информатики студент должен приобрести навыки алгоритмизации и программирования задач решаемых на ПК. При выполнении курсовой работы приобретаются навыки и умения разработки программ для решения задач на ЭВМ. В курсовой работе изучаются все этапы алгоритмизации и программирования конкретной вычислительной задачи на языке программирования Турбо-Раскаль, 1 УСЛОВИЕ ЗАДАЧИ - Найти первую производную, - Найти вторую производную, - Найти критическую точку, если это возможно, по знаку второй производной определить тип экстремума в критической точке (максимум или минимум), - Найти максимальное значение функции и минимальное значение функции y на заданном интервале [a 1 ; a 2 ]. II. Табулировать заданную квадратичную функцию на заданном интервале [a
1
;
a
2
] с шагом Примечание:
Результаты выводиться на экран в следующем виде:
- y ( a 1 ) =……. – (минимальное или максимальное значение y ) - y ( x 1 ) =……. – (минимальное или максимальное значение y ) - y ( a 2 ) =……. – (минимальное или максимальное значение y )
------------------------------------------------------- ! N ! x ! y ! y ’ ! ------------------------------------------------------- ! 1 ! ! ! ! ! 2 ! ! ! ! …. Пусть задана функция 2. Постановка задачи 2.1 Описание входной информации
Приведем описание входной информации в таблице №1 так, в соответствии с текстом программы. Таблица №1 - Описание входной информации
2.2 Описание промежуточной информации Промежуточной информацией называется информация, которая рассчитывается по формулам из входной информации, не является конечным результатом, но необходима для его определения. Приведем описание промежуточной информации в таблице №2 так, в соответствии с текстом программы. Таблица №2 - Описание промежуточной информации
2.3 Описание выходной информации Выходной информацией называется информация, которую необходимо определить при решении задачи, её рассчитывают по формулам и выводят на экран или печать оператором WRITE(WRITELN) или в файл на диске. Приведем описание выходной информации в таблице №3 так, в соответствии с текстом программы. Таблица №3 - Описание выходной информации
3. Формализация задачи (или словесно-формульное описание)
Исходная функция Первая производная Вторая производная Критическая точка Если - экстремум функции : если y ” ( x 1 )>0 , то х1 – точка минимума, если y ” ( x 1 )<0 , то х1 – точка максимума, - у(а1 ) , у(х1 ) и у(а2 ) , среди которых определяет наибольшее и наименьшее значение функции. На заданном интервале [a
1
;
a
2
] рассчитаем шаг табулирования функции Для табулирования функции первой значение х=а1 Следующее значение х=x+h Последнее значениеx <= a 2 , Значение y рассчитывается по формуле (1), y ’ - по формуле (2) 4. Алгоритм задачи
Таблица №4 – Описание подпрограмм
Алгоритм основной программы представлен на рис. 1. Рисунок 1 – Логическая схема основной программы Алгоритм функции y представлен на рис. 2
Алгоритм функции dy представлен на рис. 3.
Рисунок 3 – Логическая схема подпрограммы - функции dy Алгоритм подпрограммы min_max_2 представлен на рис. 4. Рисунок 4 – Логическая схема подпрограммы-процедуры min_max_2 Алгоритм подпрограммы min_max_3 представлен на рис. 5.
5 ПОСТРОЕНИЕ ПРОЦЕССА РЕШЕНИЕ ЗАДАЧИ
program prog; label 1; var a,b,c,a1,a2:integer; min,max,f1,f2,f3:real; h,x,yt,yp,x1:real; i:integer; function y(x:real):real; begin y:=sqr(x)/a+x/b+c; end; function dy(x:real):real; begin dy:=2*x/a+1/b; end; procedure min_max2; begin if f1>f2 then begin {max:=f1; min:=f2; } writeln('наибольшее значение - у(а1)= ',f1:5:3); writeln('наименьшее значение - у(a2)= ',f2:5:3); end; if f1<f2 then begin {max:=f2; min:=f1;} writeln('наименьшее значение - у(a1)= ',f1:5:3); writeln('наибольшее значение - у(а2)= ',f2:5:3); end; end; procedure min_max3; begin if (f1>f2)and(f1>f3) then begin {max:=f1;} writeln('наибольшее значение - у(а1)= ',f1:5:3); if f2<f3 then {min:=f2} writeln('наименьшее значение - у(х1)= ',f2:5:3) else {min:=f3} writeln('наименьшее значение - у(a2)= ',f3:5:3); end else if (f2>f1)and (f2>f3) then begin {max:=f2;} writeln('наибольшее значение - у(x1)= ',f2:5:3); if f1<f3 then {min:=f1} writeln('наименьшее значение - у(a1)= ',f1:5:3) else {min:=f3} writeln('наименьшее значение - у(a2)= ',f3:5:3); end else begin {max:=f3;} writeln('наибольшее значение - у(a2)= ',f3:5:3); if f1<f3 then {min:=f1} writeln('наименьшее значение - у(a1)= ',f1:5:3) else {min:=f3} writeln('наименьшее значение - у(a2)= ',f3:5:3); end end; begin writeln('Исследование функции вида y=xx/a+x/b+c' ); 1:write('введите целые цисла а=');readln(a); write('b=');readln(b); write('c=');readln(c); writeln('введитеинтервал :'); write('a1='); readln(a1); write('a2='); readln(a2); if a*b<>0 then begin x1:=-a/(2*b); f1:=y(a1); f2:=y(x1); f3:=y(a2); write('x=',x1:5:3,' - критическаяточка , y(x1)= ',y(x1):7:3); if a>0 then writeln (' - min') else writeln (' - max'); min_max3; end else begin writeln('aи bне могут быть нулевыми');goto 1; end; h:=abs(a1-a2)/10; x:=a1; i:=1; writeln ('табулирование функции вида у=хх/a+х/b+с'); writeln ('-----------------------------------'); writeln ('! N ! x ! y ! y p !'); writeln ('-----------------------------------'); repeat writeln('!',i:4,'!',x:7:2,'!',y(x):9:3,'!',dy(x):9:3,'!'); i:=i+1; x:=x+h; until x>a2; end. 6 КОНТРОЛЬНЫЙ ПРИМЕР Исследование функции вида y=xx/a+x/b+c введите целые цисла а=1 b=1 c=-1 введите интервал : a1=0 a2=1 x=-0.500 - критическая точка , y(x1)= -1.250 - min наибольшее значение - у(a2)= 1.000 наименьшее значение - у(a1)= -1.000 табулирование функции вида у=хх/a+х/b+с ----------------------------------- ! N ! x ! y ! y p ! ----------------------------------- ! 1! 0.00! -1.000! 1.000! ! 2! 0.10! -0.890! 1.200! ! 3! 0.20! -0.760! 1.400! ! 4! 0.30! -0.610! 1.600! ! 5! 0.40! -0.440! 1.800! ! 6! 0.50! -0.250! 2.000! ! 7! 0.60! -0.040! 2.200! ! 8! 0.70! 0.190! 2.400! ! 9! 0.80! 0.440! 2.600! ! 10! 0.90! 0.710! 2.800! Заключение В курсовой работе представлено решение задачи исследования и табулирования квадратичной функции с произвольными коэффициентами.
По результатам контрольного примера задача решена верно. Программа отлажена в среде программирования TURBOPASCAL 7.0 6 используемая литература 1. Информатика. Учебник. 3-е изд./Под ред. Проф. Н.В. Макаровой, М.:,2000. 2. 3. Новейшая энциклопедия персонального компьютера 2002, В.П. Леонтьев, М., “Олма-пресс”, 2002. 4. Симонович С., Евсеев Г., Практическая информатика, учебное пособие, М.: АСТ-пресс,2000. 5. Фаронов, TurboPascal 7.0., М.: Инфра-М,1998. 6. Фигурнов В.Э.,IBMPC для пользователей, краткий курс, М.: Инфра-М, 1997. 7. Могилев А.В., Пак Н.И., Хеннер Е.К., Информатика, Учебное пособие для студ. пед. вузов, 2-е изд., М.:Изд. центр “Академия”, 2001 – 816с. 8. , Грачева Л.Н., Лекции по информатике 9. Грачёва Л.Н., методические указания к курсовой работе по информатике для заочников, 2010 г. |