fork download
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace ConsoleApplication6
  8. {
  9. class Program
  10. {
  11. static void InputData(string[] player, int[] score, ref int numPlayer)
  12. {
  13. // input items up to the number of the array size
  14. while (numPlayer < player.Length)
  15. {
  16. Console.Write("Enter player name (Q to quit): ");
  17. player[numPlayer] = Console.ReadLine();
  18. if ((player[numPlayer] == "Q") || (player[numPlayer] == "q"))
  19. {
  20. Console.WriteLine();
  21. break;
  22. }
  23. else
  24. {
  25. Console.Write("Enter score for " + player[numPlayer] + ": ");
  26. score[numPlayer] = Convert.ToInt32(Console.ReadLine());
  27. numPlayer++;
  28. }
  29. }
  30. }
  31.  
  32.  
  33. static void DisplayPlayerData(string[] player, int[] score, int numPlayer)
  34. {
  35. Console.WriteLine("Name Score");
  36. for (int i = 0; i < numPlayer; i++)
  37. Console.WriteLine("{0, -16} {1, 8}", player[i], score[i]);
  38. }
  39.  
  40.  
  41. static double CalculateAverageScore(int[] score, ref int numPlayer) {
  42. return (double) score.Sum()/numPlayer;
  43. }
  44.  
  45. static void DisplayBelowAverage(string[] player, int[] score, int numPlayer)
  46. {
  47. double avgScore = CalculateAverageScore(score, ref numPlayer);
  48. Console.WriteLine("Players who scored below average");
  49. Console.WriteLine("Name Score");
  50. for (int i = 0; i < numPlayer; i++)
  51. {
  52. if (score[i] < avgScore)
  53. {
  54. Console.WriteLine("{0, -16} {1}", player[i], score[i]);
  55. }
  56. }
  57. }
  58. static void Main(string[] args) {
  59. //Variables
  60. string[] player = new string[100];
  61. int[] score = new int[100];
  62. int numPlayer = 0;
  63.  
  64. InputData(player, score, ref numPlayer);
  65. DisplayPlayerData(player, score, numPlayer);
  66. double avgScore = CalculateAverageScore(score, ref numPlayer);
  67. Console.WriteLine("Average Score:" + avgScore);
  68. DisplayBelowAverage(player, score, numPlayer);
  69. Console.ReadLine();
  70. }
  71. }
  72. }
Success #stdin #stdout 0.05s 24312KB
stdin
John
14
James
1
Tim
17
Steve
20
Bill
8
Kurt
9
Anna
12
Q
stdout
Enter player name (Q to quit): Enter score for John: Enter player name (Q to quit): Enter score for James: Enter player name (Q to quit): Enter score for Tim: Enter player name (Q to quit): Enter score for Steve: Enter player name (Q to quit): Enter score for Bill: Enter player name (Q to quit): Enter score for Kurt: Enter player name (Q to quit): Enter score for Anna: Enter player name (Q to quit): 
Name           Score
John                   14
James                   1
Tim                    17
Steve                  20
Bill                    8
Kurt                    9
Anna                   12
Average Score:11.5714285714286
Players who scored below average
Name           Score
James            1
Bill             8
Kurt             9