23-04-2014, 10:33 PM
السلام عليكم
يا إخواني الكرام عندي مشكل
أنا عندي Algorithm يشتغل عادي بلغة البرمجة باسكال
المشكلة هي أنه دائما يعطيني نفس النتيجة
يعني مهما غيرت قيمة المجهول x يعطيني نفس النتيجة
بالمناسبة ها هو الألغوريتوم و هو شغال بدون مشاكل على الباسكال
اظنه يحتوي على خطا بسيط لم اجده
انتظر نصائحكم وشكرا
يا إخواني الكرام عندي مشكل
أنا عندي Algorithm يشتغل عادي بلغة البرمجة باسكال
المشكلة هي أنه دائما يعطيني نفس النتيجة
يعني مهما غيرت قيمة المجهول x يعطيني نفس النتيجة
بالمناسبة ها هو الألغوريتوم و هو شغال بدون مشاكل على الباسكال
PHP كود :
program erreurf;
uses wincrt;
type
tableau=array[1..20]of extended;
VAR
tab,b,a:tableau;
i,j,nbvar:integer;
x,f:extended;
erf(x:extended):extended;
var
f,c:extended;
j:integer;
begin
c:=0;
if 1.5<x then
begin
c:=(2-c);
j:=3+Trunc(32/x); {Trunc=Partie Entière}
f:=0;
repeat
f:=1/(f*j+x*sqrt(2));
j:=j-1;
until j=0;
f:=f*c*(3-c*c)*exp(-x*x)/sqrt(2*pi)+(c-1)*(3*c*c+c-8)/6;
end
else
begin
j:=3+Trunc(9*x);
f:=1;
repeat
f:=1+f*x*x*(0.5-j)/j/(0.5+j);
j:=j-1;
until j=0;
f:=c+f*x*(2-4*c)/sqrt(pi);
end;
erf:=f;
end;
{******************************** Programme principale *******************************}
begin
write('donner la valeur de x =');
readln(x);
erf(x);
writeln('la fonction d erreur est :',f); readln;
end.
انتظر نصائحكم وشكرا