Venciity

[Jumpstart C#] Multidimensional-Arrays 06-Students

Mar 5th, 2014
220
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.12 KB | None | 0 0
  1. /*В масива A(M,N) са дадени оценките на N ученика от да­ден клас по M учебни предмета.
  2.  * Изчислете средния успех на всеки уче­ник, средния ус­пех по всеки предмет и общия среден успех на класа.
  3.  * (За­бележка: Неиз­пи­та­ни­те ученици имат оценка нула. Тя не влияе на сред­ния ус­пех.) */
  4.  
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10.  
  11. namespace _06_Students
  12. {
  13.     class Program
  14.     {
  15.         static void Main(string[] args)
  16.         {
  17.             int[,] grades = new int[3, 5]
  18.             {
  19.                 {2, 2, 2, 0, 2},
  20.                 {3, 0, 3, 5, 6},
  21.                 {6, 6, 6, 6, 6}
  22.             };
  23.  
  24.             int m = grades.GetLength(0);  // subjects = предмети
  25.             int n = grades.GetLength(1);  // students
  26.  
  27.             for (int i = 0; i < n; i++)
  28.             {
  29.                 int studentGradesSum = 0;
  30.                 int studentGradesCount = 0;
  31.  
  32.                 for (int j = 0; j < m; j++)
  33.                 {
  34.                     if (grades[j, i] !=0)
  35.                     {
  36.                         studentGradesSum += grades[j, i];
  37.                         studentGradesCount++;
  38.                     }
  39.                 }
  40.  
  41.                 if (studentGradesCount != 0)
  42.                 {
  43.                     Console.WriteLine("Student #{0} GPA: {1}", i, studentGradesSum / (float)studentGradesCount);
  44.                     // GPA = Grade Point Average
  45.                 }
  46.                 else
  47.                 {
  48.                     Console.WriteLine("");
  49.                 }
  50.             }
  51.  
  52.             Console.WriteLine();
  53.  
  54.             for (int i = 0; i < m; i++)
  55.             {
  56.                 int subjectGradesSum = 0;
  57.                 int subjectGradesCount = 0;
  58.  
  59.                 for (int j = 0; j < n; j++)
  60.                 {
  61.                     if (grades[i, j] != 0)
  62.                     {
  63.                         subjectGradesSum += grades[i, j];
  64.                         subjectGradesCount++;
  65.                     }
  66.                 }
  67.  
  68.                 if (subjectGradesCount != 0)
  69.                 {
  70.                     Console.WriteLine("Sbuject #{0} GPA: {1}",i,subjectGradesSum / (float)subjectGradesCount );
  71.                 }
  72.                 else
  73.                 {
  74.                     Console.WriteLine("");
  75.                 }
  76.             }
  77.  
  78.             Console.WriteLine();
  79.  
  80.             int classGradesSum = 0;
  81.             int classGradesCount = 0;
  82.             for (int i = 0; i < m; i++)
  83.             {
  84.                 for (int j = 0; j < n; j++)
  85.                 {
  86.                     if (grades[i, j] != 0)
  87.                     {
  88.                         classGradesSum += grades[i, j];
  89.                         classGradesCount++;
  90.                     }
  91.                 }
  92.             }
  93.             Console.WriteLine("Class GPA: {0}",classGradesSum /(float)classGradesCount);
  94.         }
  95.     }
  96. }
Advertisement
Add Comment
Please, Sign In to add comment