Построить график функции - Turbo Pascal (29403)
Формулировка задачи:
Построить график функции y=(cos(x))/x на интервале [a,b].
Решение задачи: «Построить график функции»
textual
Листинг программы
- uses graph,crt;
- function F(x:real):real;
- begin
- F:=cos(x)/x;
- end;
- var a,b,mx,my,x:real;
- x0,y0,n,i:integer;
- s:string;
- begin
- clrscr;
- {введем a,b так чтобы получить более-менее приличный график}
- repeat
- write('-7<=a<=-3 a=');
- readln(a);
- until(a>=-7)and(a<=-3);
- repeat
- write('3<=b<=7 b=');
- readln(b);
- until(b>=3)and(b<=7);
- initgraph(x0,y0,'');
- x0:=round(-a*(getmaxX-30)/(b-a));
- mx:=(x0-30)/-a;{масштаб по Х}
- y0:=getmaxY div 2;
- my:=(y0-30)/50;{примем макс по оси Y=50, он бесконечен}
- line(0,y0,getmaxX,y0);{оси}
- line(x0,0,x0,getmaxY);
- n:=5;
- if trunc(-a)+1>n then n:=trunc(-a)+1;
- if trunc(b)+1>n then n:=trunc(b)+1;
- for i:=1 to n do{максимальное количество засечек в одну сторону}
- begin
- line(x0-3,y0-round(i*my*10),x0+3,y0-round(i*my*10));{засечки на оси У}
- line(x0-3,y0+round(i*my*10),x0+3,y0+round(i*my*10));
- {подпись оси У}
- str(i*10,s);
- outtextXY(x0-30,y0-round(i*my*10),s);{соответственно засечкам}
- outtextXY(x0-35,y0+round(i*my*10),'-'+s);
- line(x0-round(i*mx),y0-3,x0-round(i*mx),y0+3); {засечки на оси Х}
- line(x0+round(i*mx),y0-3,x0+round(i*mx),y0+3);
- {подпись оси X}
- str(i,s);
- outtextXY(x0-round(i*mx),y0+10,s);{соответственно засечкам}
- outtextXY(x0+round(i*mx),y0+10,+s);
- end;
- {центр}
- outtextXY(x0+5,y0+10,'0');
- {подписи концов осей}
- outtextXY(getmaxX-10,y0-10,'X');
- outtextXY(x0+5,10, 'Y');
- {график}
- x:=a;
- while x<=b do
- begin
- if abs(x)>0.01 then putpixel(x0+round(x*mx),y0-round(F(x)*my),12);
- x:=x+0.0001;
- end;
- {название}
- setcolor(12);
- outtextXY(60,10,'y=cos(x)/x');
- readln
- end.
Объяснение кода листинга программы
- Используется библиотека graph и функция initgraph для настройки графика.
- Функция F(x) вычисляет значение функции y=cos(x)/x.
- Переменные a, b, mx, my, x и y инициализируются значениями, введенными пользователем.
- Оси графика подписываются с помощью функций outtextXY и str.
- Засечки на оси X и Y рисуются с помощью функции line.
- Центр графика рисуется с помощью функции outtextXY.
- Конец графика оформляется с помощью функций outtextXY и setcolor.
- Название графика рисуется с помощью функции outtextXY.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д