PDA

View Full Version : شكال در محاسبه سينوس با استفاده از سري تيلور با شرط دقت 0.001 به زبان سي++



zeroandone
یک شنبه 23 آبان 1389, 15:14 عصر
سلام دوستان
من برنامه محاسبه سينوس را به زبان سي نوشتم ولي وقتي شرط دقت را ميزارم ايراد پيدا مي كند
بدون شرط دقت با حلقه for جواب مي ده اشكال كار در كجاست؟
بايد اين برنامه را به سي پلاس پلاس بنويسم اما نمي دانم فرمتهاي چاپ در سي ++ به چه صورته؟
اساتيد وصاحبنظران كمك كنند.
خيلي مهم و فوريه
با تشكر

اينم كد برنامه


#include <stdio.h>
#include <conio.h>
float s,sum;
int j,c;
float sine(float k)
{int i;
s=1.0;
for(i=1;i<=2*j+1;i++)s=s*k/i;
sum=sum+c*s;
c=c*(-1);
return sum;
}
void main(void)
{float a,x,pi,ans,acc;
int flag=1;
pi=3.14159265358979323846;
do
{
printf("\nEnter your angle('c):");
scanf("%f",&a);
if(a>=360)a=a-float(int(a/360)*360);
x=a*pi/180;
sum=0;
c=1;
acc=0;
while(flag){ans=sine(x);if ((acc-ans)<=0.001)flag=0;printf("\nSine %2.0f'C=%5.3f",a,ans); acc=ans;}
printf("\nSine %2.0f'C=%5.3f",a,ans);
printf("\n\n\nDo you want to continue(y/n)?");
}while(getch()!='n');
}

zeroandone
یک شنبه 23 آبان 1389, 15:18 عصر
ببخشيد فرمت برنامه يكم جابجا شد.
نمي دونستم چجوري بايد اصلاح كنم.