Jak otrzymać sumę przerw?

Jak otrzymać sumę przerw?

Wątek przeniesiony 2014-11-13 10:25 z C# i .NET przez ŁF.

AC
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 14
0

Witam, otóż mam kawałek pętli można powiedzieć że jest ona odpowiedzialna za obliczanie długości przerw...
Wszystko śmiga ładnie ale teraz zastanawiam się jak otrzymać sumę długości przerw..
Program działa na zasadzie:

Pobiera początek przerwy oraz jej koniec a następnie odejmuje je od siebie co daje nam długość przerw.
np: 12:20:00 / 12:30:00 = 00:10:00 <- długość przerwy. I teraz gdy z pętli mamy kilka takich wyników czy można te przerwy dodać do siebie aby otrzymać jeden wynik? np długość wszystkich przerw z całego dnia?

Kopiuj
 for (breakIndex = 0; breakIndex < 32; breakIndex++)
            {

                string cellValue;
                cellValue = gridViewBreaks.GetRowCellValue(breakIndex, "Początek").ToString();

                MessageBox.Show(cellValue, "początek przerwy");


                string cellValue2;
                cellValue2 = gridViewBreaks.GetRowCellValue(breakIndex, "Koniec").ToString();

                MessageBox.Show(cellValue2, "koniec przerwy");

                TimeSpan time = TimeSpan.Parse(cellValue);
                TimeSpan time2 = TimeSpan.Parse(cellValue2);

                TimeSpan result = time2 - time;

                string resulttime = result.ToString();

                MessageBox.Show(resulttime, "długość przerwy");
               
            }

Jeżeli coś przedstawiłem nie tak to przepraszam.

Vardamir
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
1

Zadeklaruj przed pętlą zmienną suma. Następnie w pętli dodawaj do niej result.

AC
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 14
0

tak, wszystko się zgadza. Jakaś podpowiedz odnośnie dodania w pętli zmiennej?? jak zsumować wynik resulttime?

RA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
1

Czemu chcesz sumować resulttime, który jest stringiem? sumuj sobie TimeSpany.

AC
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 14
0

ok źle napisałem chodzi o sumowanie result który jest TimeSpan.

RA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
0

W takim razie w czym problem? Sumuje się zazwyczaj używając operatora +...

AC
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 14
0

ciężko było mi się tego domyśleć że należy użyć + .. chodzi oto że mam wynik result w pętli.. ten wynik otrzymuję z odejmowania czasów i zapętla się do max 32 razy w zależności ile mamy przerw.. więc skoro niby tylko wystarczy użyć operatora + ? to niby gdzie? hmm..

RA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 37
0

Kolega już przecież podpowiedział.

Vardamir napisał(a):

Zadeklaruj przed pętlą zmienną suma. Następnie w pętli dodawaj do niej result.

AC
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 14
0

nvm

dam1an
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 1589
1
Kopiuj
var sum = new TimeSpan();
for(coś tam)
{
   TimeSpan result = // wyliczasz ten result
   sum += result;
}
AC
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 14
0

dzięki wielkie, musiałem jeszcze dodać kilka rzeczy i działa.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.