시리즈를 계산하고 싶지만 do..while 루프가 올바르지 않습니다. 사용자는 입력 x를 다음과 같이 요약합니다. sum = sum + x/2^n. 여기서 n은 실행 변수입니다.Infinite 시리즈 : While 루프가 무한으로 끝납니다
합계가 < = 0.00001이 될 때까지 반복해야합니다.
그러면 프로그램은 합계 값과 실행 변수의 크기를 사용자에게 알립니다. 지금까지
내 코드 : 무한 루프에
public static int n = 0;
static void Main(string[] args)
{
double x, sum = 0, e = 0.00001;
Console.Write("input x: ");
x = Convert.ToDouble(Console.ReadLine());
do
{
sum = sum + x/Math.Pow(2,n);
n++;
} while (sum >= e);
Console.WriteLine ("Sum = " + sum + ", " + n + " count");
}
하지만 내 코드 결과. 당신은 어떤 아이디어가 있습니까, 어떻게 달성 할 수 있습니까?
합이 항상 전자보다 더 큰오고 있기 때문이다. –
합계가 항상 e – Alexan
'sum'보다 커지기 때문에'e'보다 어떻게 작아 집니까? 아마 당신은 x/2^n이'e'보다 작아 질 때까지 반복하고 싶습니까? – KMoussa