none
Como Solucioné el calculo de la media del tiempo en c# y Access

    General discussion

  • Necesitaba calcular la media y el total de una serie de tiempos que tenia en un datagrid. gracias a la respuesta de Marvin E. Pineda, que me guio para hacerlo con TimeSpan en un hilo que abri anteriormente, os presento como lo solucione, por si puede se de ayuda: Para ello he creado una lista de TimeSpan donde puedo ir agregando los tiempos para luego hacer la media.
    //Calculo media del tiempo medio de las llamadas
     private void calculo_media(){ 
    // Creo una lista donde metere todos los tiempos
     List<TimeSpan> tiempos = new List<TimeSpan>(); 
    // Total del tiempo sumado 
    TimeSpan acumulado =new TimeSpan();
     // Duracion de cada llamada 
    string duracion = null; 
    // para sacar Horas, Minutos, Segundos string[] desarmar = null; 
    try { 
    // Por cada fila en el datagrid 
    for (int i = 0; i < dataGridView1.RowCount; i++)
    {
    // Cogemos la duracion que tiene este formato '21/02/04 12:55:10' 
    duracion = dataGridView1.Rows[i].Cells[4].Value.ToString(); 
    // Nos quedamos con la duracion de la llamada 
    desarmar = duracion.Split(' '); 
    duracion = desarmar[1]; 
    // Separamos Horas, Minutos, Segundos 
    desarmar = duracion.Split(':');
     // Añadimos a la lista
     tiempos.Add(new TimeSpan(Convert.ToInt32(desarmar[0]),Convert.ToInt32(desarmar[1]), Convert.ToInt32(desarmar[2]))); 
    } 
    // Sumamos todos los tiempos de la lista 
    foreach (TimeSpan tiempo in tiempos) 
    { 
    acumulado = acumulado + tiempo; 
    } 
    // Presentamos total 
    label21.Text = acumulado.ToString();
     // Calculamos el promedio de duracion de las llamadas. 
    
    TimeSpan promedio = new TimeSpan(acumulado.Ticks /dataGridView1.Rows.Count);
     //Presentamos promedio 
    Segundos.Text = promedio.ToString(); } catch (Exception e) { } }

    Thursday, November 18, 2010 5:32 PM

All replies