Golf HCP Calculator - PullRequest
       3

Golf HCP Calculator

0 голосов
/ 13 марта 2019

Я работаю над программой в ASP.NET MVC, где моя цель состоит в том, чтобы сделать карточку для игры в гольф.

В гольфе у каждого игрока есть гандикап, который дает им ряд дополнительных ударов на каждом поле для гольфа, на котором он играет. затем эти числа распределяются по 18 отверстиям в зависимости от индекса на отверстии (насколько это сложно). Так, например, если вы получите 25 дополнительных ударов, вы получите один удар по отверстию 1-18, а затем один дополнительный по отверстию индекса 1-7 (таким образом, у вас есть два дополнительных удара по этим отверстиям).

Моя карта результатов представлена ​​в виде рядом с номером отверстия, где я хочу указать, сколько дополнительных штрихов у вас есть на этом отверстии. Так что теперь я хочу сделать функцию, которая распространяет эти дополнительные штрихи.

Моя идея для функций заключается в том, что я передаю в таблицу показателей игроков и количество ударов в качестве параметра, а затем в некотором цикле for распределяю количество ударов по 18 лункам. А затем верните список, чтобы я мог представить его в виде.

Кто-нибудь, кто может помочь мне, как написать эту функцию?

/ Майк

Вот так я и начал, но застрял ..

public static List<Result> DistributeStrokes (int stroke,List<Result>MyList)

{

for(int i=0; i< MyList.count; i--;)

  {

   //do some code to add the strokes on the list 

  }

   return MyList;

 }

Это мой класс

public Class Result

{

 public int Id {get;set}

 public int Stroke{get;set}  //number of strokes on the hole

 public int Score {get;set}   //number of extra stroke on the hole

 public int Point {get;set}

}

1 Ответ

0 голосов
/ 13 марта 2019

Что-то в соответствии с приведенным ниже кодом должно помочь, даже если это не на 100% правильно (я отвечаю со своего телефона).Использование оператора модуля для циклического прохождения по списку, увеличения результирующего штриха и уменьшения параметра штриха.

int index = 0;
while (stroke > 0) 
{
    stroke--;
    MyList[index].Stroke++;
    index = (index + 1) % MyList.Count;
}

Вы также можете рассмотреть возможность обработки случая, когда список пуст и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...