2017-10-19 7 views
-2

Salut Je me demandais si quelqu'un pouvait expliquer comment faire pour que cette méthode affiche un compte courant et une moyenne, et ne pas simplement l'afficher une fois que l'utilisateur a fini d'entrer ses données?Affichage total cumulé

public void InScreen() 
{ 
    int count = 0; 
    double total = 0.0; 
    double average = 0.0; 
    double number; 

    Console.WriteLine("Enter the set of scores (enter 0 to indicate end of set)"); 

    number = double.Parse(Console.ReadLine()); 

    while(number != 0) 
    { 
     total += number; 
     count++; 
     number = double.Parse(Console.ReadLine()); 
    } 

    if (count != 0) 
     average = total/count; 

    Console.Beep(20000, 2000); 
    Console.WriteLine("The user has entered {0} scores.", count); 
    Console.WriteLine("The sum of scores entered = {0}", total); 
    Console.WriteLine("The average of scores entered = {0}", average); 
} 
+5

S'il vous plaît prendre plus de soin sur la façon dont vous présentez votre code. Sans indentation, c'est vraiment difficile à lire. Ensuite, qu'avez-vous * essayé * pour afficher un compte courant et une moyenne? Astuce: vous écrirez la sortie dans la boucle 'while' ... –

+3

Donc, il suffit de déplacer votre code de résumé dans la boucle while – musefan

+0

merci désolé bout beaucoup plus facile alors je pensais que ce serait –

Répondre

0

simplement essayer ce

static void Main(string[] args) 
    { 
     try 
     { 
      StringBuilder runningtotal = new StringBuilder(); 

      int count = 0; 
      double total = 0.0; 
      double average = 0.0; 
      double number; 

      Console.WriteLine("Enter the set of scores (enter 0 to indicate end of set)"); 

      number = double.Parse(Console.ReadLine()); 
      runningtotal.Append(number.ToString()); 
      while (number != 0) 
      { 

       total += number; 
       count++; 
       number = double.Parse(Console.ReadLine()); 
       if (number!=0) 
       { 
        runningtotal.Append("+" + number.ToString()); 
       } 

      } 
      if (count != 0) 
       average = total/count; 
      Console.Beep(20000, 2000); 
      Console.WriteLine("The user has entered {0} scores.", count); 
      Console.WriteLine("The sum of scores entered = {0}", total); 
      Console.WriteLine("The average of scores entered = {0}", average); 
      Console.WriteLine(runningtotal); 
      string[] inputs = runningtotal.ToString().Split('+'); 
      Console.WriteLine("Running total"); 
      int temp=0; 
      for (int i = 0; i <inputs.Length; i++) 
      { 
       if (temp==0) 
       { 
        Console.WriteLine("{0} = {1}",inputs[i],inputs[i]); 
        temp = Convert.ToInt32(inputs[i]); 
       } 
       else 
       { 
        Console.WriteLine("{0} = {1}", inputs[i], Convert.ToInt32(inputs[i]) + temp); 
        temp = Convert.ToInt32(inputs[i]) + temp; 
       } 



      } 

      Console.ReadLine(); 
     } 
     catch (Exception ex) 
     { 
      Console.WriteLine(ex.Message); 
      Console.ReadLine(); 
     } 

     Console.ReadLine(); 
    } 

sortie Screenshot

enter image description here

Lire Here