Loading...
ivaylor2 avatar ivaylor2 0 Точки

05. Darts Tourament от ExamPreparation C#

Здравейте! Моля някои да ми каже къде греша. Задачата е 05. Darts Tourament от ExamPreparation.

https://pastebin.com/LmN2WzrV

Условие:

Задача 5. Турнир по дартс

На круизния кораб, на който Ани и семейството й прекарват лятната си почивка се организират различни развлечения за гостите. Ани решила да се запише за участие в турнира по дартс. В тази игра играчът започва с определен брой точки, които се намаляват постепенно и при достигането на точно нула точки играчът печели. На мишената има следните сектори – сектор с конкретен брой точки (number section), сектор, който удвоява точките (double ring), сектор, който утроява точките (triple ring) и център на мишената (bullseye). Ако играчът уцели центъра на мишената, автоматично печели играта. Играчът губи ако точките му станат отрицателни.

Вход

От конзолата първо се чете един ред:

  • Първоначален брой точки  –  цяло положително число в интервала [1 … 1000];

След това последователно се четат по два реда:

  • Сектор на мишената – текст с възможности: "number section", "double ring",
    "triple ring", "bullseye"
  • Брой точки  – цяло положително число в интервала [1 … 100]

Изход

На конзолата се отпечатва един ред:

  • Ако играчът спечели чрез достигане на нула точки:

                "Congratulations! You won the game in {брой ходове} moves!"

  • Ако играчът спечели чрез уцелване на центъра на мишената:

                "Congratulations! You won the game with a bullseye in {брой ходове} moves!"

  • Ако играчът загуби:

       "Sorry, you lost. Score difference: {брой отрицателни точки}."

Примерен вход и изход

Вход

Изход

Обяснения

150

double ring

20

triple ring

10

number section

20

triple ring

20

Congratulations! You won the game in 4 moves!

Ани започва със 150 точки. В първия ход уцелва 20 точки в двойния сектор и точките се удвояват =>

 20 * 2 = 40.  След това се изваждат от първоначалния брой точки: 150 – 40 = 110.

Във втория ход уцелва 10 точки в тройния сектор => 10 * 3 = 30, които отново се изваждат => 110 – 30 =  80.

В третия ход уцелва точно 20 точки, които отново се изваждат => 80 – 20 = 60.

В четвъртия ход уцелва 20 точки в тройния сектор => 20 * 3 = 60, след което се изваждат       => 60 - 60 = 0. Ани достига нула точки и печели играта.

 

Тагове:
0
Programming Basics
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.