Je veux calculer une série, mais je ne reçois pas ma boucle do..while correcte. L'utilisateur crée l'entrée x, qui se résume comme suit: sum = somme + x/2^n, où n est la variable courante.Infinite Series: While boucle se termine à l'infini
Ceci doit être bouclé, jusqu'à la somme < = 0.00001. Ensuite, le programme notifiera à l'utilisateur la valeur de la somme et la taille de la variable en cours d'exécution.
Mon code à ce jour:
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");
}
Mais mes résultats de code dans une boucle infinie. Avez-vous des idées, comment je pourrais y arriver?
parce que la somme est toujours à venir supérieur e. –
parce que la somme toujours plus grande que e – Alexan
'somme' augmente, comment sera-t-il jamais plus petit que' e'? Peut-être voulez-vous faire une boucle jusqu'à ce que x/2^n soit inférieur à 'e'? – KMoussa