PDA

Просмотр полной версии : Паскаль. Я новичок.Нужна помощь



coollerik
20.02.2008, 21:13
Паскаль - помогите решить задачку

--------------------------------------------------------------------------------

Уважаемые! Помогите пжлста не грамотному человечику разобраться с Паскалем и решить задачки!

1.∑(1/к)^n, к=1...n
n степень, при к от 1 до n!

2.Построить график функции (Sin^2 X)/X,на интервале от а до в(включительно)
Функция синус в квадрате икс,делённое на икс.

Dim...ON
20.02.2008, 22:59
уважаемая:)
стучись в аську 198-012-696
помогу разобраться не только с задачками, но и со смыслом жизни :)

coollerik
26.02.2008, 16:32
Спасибо)))

Осталось только функцию.

MOTOCoder
26.02.2008, 20:24
Вот вам решение функции:

program func;

uses
crt, graph;


var
A,B:integer;
x,y:real;
gd,gm:integer;
cx,cy:integer;
ox,oy:real;
K:integer;
D:real;

function GrFunc(x:real):real;
begin
if x<>0 then
GrFunc:=-sqr(sin(x))/x
else GrFunc:=0;
end;

begin
writeln('Введите A:');
readln(A);
writeln('Введите B:');
readln(B);
writeln('Введите K:');
readln(K);
writeln('Введите D:');
readln(D);

InitGraph(gd,gm,'');
cx:=GetMaxX div 2;
cy:=GetMaxY div 2;

Line(cx,0,cx,GetMaxY);
Line(0,cy,GetMaxX,cy);
setcolor(10);

ox:=a;
oy:=GrFunc(ox);

x:=a;
while x<=b do
begin
Y:=GrFunc(x);
Line(cx+Round(ox*K),cy+Round(oy*K),cx+Round(X*K),c y+Round(Y*K));
ox:=X;
oy:=Y;
X:=X+D;
end;

repeat until keypressed;
CloseGraph;

end.



Начальные значения брал следующие:
A=-10
B=10
K=30(масштабный коэффициент)
D=0.5(шаг рассчетов)

Картина получилась практически аналогичной той, что построил AdvancedGrapher.

coollerik
26.02.2008, 23:17
очень благодарна)))
завтра разберусь)))