![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
aptu |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 1 Пол: Мужской Реальное имя: Artem Репутация: ![]() ![]() ![]() |
Помогите дорешать задачу
=========================================================================== Пользуясь процедурами и функциями модуля Crt, построить график заданной функции F(x) со стандартным расположением осей координат(x-горизонтальная, y- вертикальная). Фон графика, оси, сам график и надписи изобразить разными цветами. Кривую F(x) представить символами псевдографики по собственному усмотрению. Масштаб должен обеспечивать полное расположение графика на экране, с максимальным заполнением экрана. Вычисление масштаба осуществляется программой. Функция F(x)=2 ex cos x xнач=0 xкон=4 количество точек максимальное =========================================================================== Заранее очень и очень признателен!!!!! --------------------------------------------------------------------------------------------------------------------------------------- uses crt; const xmin:double = 0; xmax:double = 4; var a,y,i : integer; x1:real; x:double; xdelta,ydelta,Ymax,Ymin:double; function f(x:double):double; begin f := 2*exp(x)*cos(x); end; procedure minmax(var Ymin,Ymax:double); var x,y:double; begin x:= xmin; Y:=f(x); x:= x+xdelta; ymax:=y; ymin:=y; while x < xmax do begin y:= f(x); if Ymax < y then Ymax := y; if Ymin > y then Ymin := y; x:=x+xdelta; end; end; procedure stroimosi; var x,y,y0:integer; begin clrscr; textcolor(12); if ymax*ymin<0 then y0:=round(24*ymax/(ymax-ymin)) else if ymin >= 0 then y0 := 25 else y0:=1; for x:= 1 to 76 do begin gotoxy(x,y0); if x < 76 then write(#196) else write('-> x'); end; for y:= 1 to 25 do begin gotoxy(1,y); write(#179); end; end; procedure stroimgrafik; var xi,yi:integer; xd,yd:double; begin textcolor(10); xd:= xmin; for xi := 1 to 80 do begin yd:=f(xd); yi:=round(-24*yd/(ymax-ymin)+13); gotoxy(xi,yi); write('*'); xd:= xd+xdelta; end; end; { ===================================================== } begin xdelta := (xmax-xmin) / (80 - 1); minmax(ymin,ymax); ydelta:=(ymax-ymin) / (25 - 1); stroimosi; stroimgrafik; { ===================================================== } gotoxy(1,1); writeln (Ymax:2:2); writeln (Ymin:2:2); readln; end. Сообщение отредактировано: aptu - 18.01.2007 21:59 |
![]() ![]() |
Lapp |
![]()
Сообщение
#2
|
|||
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
И покажи свои наработки, если есть... -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
|||
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 2:34 |