Получите вечер пятницы и субботы каждого дня - PullRequest
0 голосов
/ 04 ноября 2018

Проблема в том, что мне нужно искать каждую субботу и пятницу и взимать с них 140 долларов в пятницу или субботу. Должен ли я использовать цикл while?

  DateTime ArrivalDate = DateTime.Parse(txtArrivalDate.Text);

        DateTime DepartureDate = DateTime.Parse(txtDepartureDate.Text);

        TimeSpan numberOfNights = DepartureDate.Subtract(ArrivalDate);

        decimal nights = numberOfNights.Days;

        txtNights.Text = nights.ToString();
        //txtTotalPrice
        decimal pricePerNight = 120.00m;
        decimal totalNight = nights * pricePerNight;

        txtTotalPrice.Text = "$" + totalNight.ToString();
        txtAvgPrice.Text = "$" + pricePerNight.ToString();


              // finds the fridays
        decimal morePricePerNight = 140.00m;

        int i = 0;
        // while loop
             while (ArrivalDate.DayOfWeek != DayOfWeek.Friday)
        {
            ArrivalDate = ArrivalDate.AddDays(1);
        }

        while (DepartureDate.DayOfWeek != DayOfWeek.Friday)
        {
            DepartureDate = DepartureDate.AddDays(1);
        }

1 Ответ

0 голосов
/ 04 ноября 2018

Почему бы не использовать только один цикл while?

Полагаю, вы можете написать следующий код:

var date = DepartureDate;
while (date < ArrivalDate)
{   
    if (date.DayOfWeek == DayOfWeek.Friday || date.DayOfWeek == DayOfWeek.Saturday)
    {
        totalNight += 140.00m;          
    }

    date = date.AddDays(1);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...