Смекни!
smekni.com

Составление программ для решения задач на языке программирования Turbo Pascal 2 (стр. 2 из 2)

Алгоритм подпрограммы min_max_2 представлен на рис. 4.

Рисунок 4 – Логическая схема подпрограммы-процедуры min_max_2

Алгоритм подпрограммы min_max_3 представлен на рис. 5.

Рисунок 5 – Логическая схема подпрограммы-процедуры min_max3

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.

Информатика. Базовый курс., Симонович С.В. и др.СПб.: Питер. 2001.

3. Новейшая энциклопедия персонального компьютера 2002, В.П. Леонтьев, М., “Олма-пресс”, 2002.

4. Симонович С., Евсеев Г., Практическая информатика, учебное пособие, М.: АСТ-пресс,2000.

5. Фаронов, TurboPascal 7.0., М.: Инфра-М,1998.

6. Фигурнов В.Э.,IBMPC для пользователей, краткий курс, М.: Инфра-М, 1997.

7. Могилев А.В., Пак Н.И., Хеннер Е.К., Информатика, Учебное пособие для студ. пед. вузов, 2-е изд., М.:Изд. центр “Академия”, 2001 – 816с.

8. , Грачева Л.Н., Лекции по информатике

9. Грачёва Л.Н., методические указания к курсовой работе по информатике для заочников, 2010 г.