using System;
using LeerDato;
namespace MatrizUnidimensional
{
  class Program
  {
    public static void Main(string[] args)
    {
      int nAlumnos = 0;
      do
      {
        Console.Write("Número de elementos de la matriz: ");
        Leer.DatoInt(ref nAlumnos);
      }
      while (nAlumnos < 1);

      // Crear la matriz nota
      double[] nota = new double[nAlumnos];
      int i = 0; // subíndice

      Console.WriteLine("Introducir los valores de la matriz.");
      for (i = 0; i < nAlumnos; i++)
      {
        Console.Write("nota[" + i + "] = ");
        Leer.DatoDouble(ref nota[i]);
      }

      // Visualizar los elementos de la matriz, la nota
      // media y el % de aprobados y de suspendidos
      int aprobados = 0;
      int suspendidos = 0;
      double suma = 0;
      Console.WriteLine();
      for (i = 0; i < nAlumnos; i++)
      {
        // Visualizar nota
        Console.Write("Alumno {0:D}, nota: {1:F2}\n",
                      i+1, nota[i]);
        // Acumular la nota en suma
        suma += nota[i]; // equivale a: suma=suma+nota[i]
        // Incrementar el contador de aprobados o de
        // suspendidos
        if (nota[i] >= 5)
          aprobados++;
        else
          suspendidos++;
      }
      Console.Write("Nota media: {0:F2}\n",
                    suma/nAlumnos);
      Console.Write("Aprobados {0:F2} %\n",
                    aprobados*100/(double)nAlumnos);
      Console.Write("Suspendidos {0:F2} %\n",
                    suspendidos*100/(double)nAlumnos);
      
      Console.Write("Pulse una tecla para continuar...");
      Console.ReadKey(true);
    }
  }
}
