
BG Development · За реклама · За контакти |
![]() ![]() ![]() ![]() ![]() |
Здравей! ( Включване | Регистриране ) |
![]() ![]() ![]() |
jordanElj |
Публикувано на: 06-10-2022, 10:26
|
Име: Група: Потребител Ранг: Новопостъпил Мнения: 19 Регистриран на: 25.09.22 ![]() |
Tрябва да създадете програма, която симулира играта със зарове 12
Играта се състои от три зара и целта е да добавите до 12 във всеки кръг (на произволен брой зарове). Всеки зар може да се хвърля само веднъж на рунд. Във всеки кръг играчът трябва да може да избира между: 1 - матрица за хвърляне 1 2 - матрица за хвърляне 2 3 - матрица за хвърляне 3 q - отмени играта Програмата трябва произволно да избере стойност за избрания зар и след това да изчисли общия резултат. Програмата трябва също така да представя броя на спечелените и броя на загубените рундове. Програмата трябва да продължи, докато потребителят избере да отмени играта. Дефиницията за печалба е, когато сумата на заровете е 12 (независимо от броя на заровете), а дефиницията за загуба е сума, надвишаваща 12, след като и трите зара са хвърлени. Ако сборът след три хвърляния е по-малък от 12, няма нито победа, нито загуба, но отивате директно в следващия кръг. -------------------------------------------------- ---------------------------------- Добре дошли в играта 12. Трябва да хвърлите 1-3 зара и да се опитате да получите общо 12... Въведете кой зар искате да хвърлите [1,2,3] (завършете с q): 1 6 0 0 сбор: 6 #победа: 0 #загуба: 0 Въведете кой зар искате да хвърлите [1,2,3] (завършете с q): 2 6 1 0 общо: 7 #победа: 0 #загуба: 0 Въведете кой зар искате да ударите [1,2,3] (завършете с q): 3 6 1 2 общо: 9 #победа: 0 #загуба: 0 Следващ кръг! Въведете кой зар искате да хвърлите [1,2,3] (завършете с q): 1 6 0 0 сбор: 6 #победа: 0 #загуба: 0 Въведете кой зар искате да хвърлите [1,2,3] (завършете с q): 2 6 3 0 общо: 9 #победа: 0 #загуба: 0 Въведете кой зар искате да ударите [1,2,3] (завършете с q): 3 6 3 3 общо: 12 #победа: 1 #загуба: 0 Следващ кръг! Въведете кой зар искате да хвърлите [1,2,3] (завършва с q): q Край на играта! -------------------------------------------------- ---------------------------------- В тази задача трябва да проверите/управлявате въвеждането на потребителя и да дадете подходяща обратна връзка, ако възникне неправилно въвеждане. Програмата не трябва да се срива, независимо какво въвежда потребителят. В рунд можете да ударите всеки зар само веднъж. Използвайте константи за стойности, които не се променят. |
jordanElj |
Публикувано на: 06-10-2022, 11:21
|
||
Име: Група: Потребител Ранг: Новопостъпил Мнения: 19 Регистриран на: 25.09.22 ![]() |
Това тука би трябвало да е началото на програмата!
|
||
thrawn |
Публикувано на: 07-10-2022, 08:59
|
![]() Име: Група: Потребител Ранг: Почетен член Мнения: 3521 Регистриран на: 17.01.17 ![]() |
Показвай целия код, при това се старай да е форматиран добре. Така шансът да се допусне грешка (логическа) намалява.
На въпросът ти "как се хвърля зар" явно няма смисъл да се отговаря (използва се рандом генератор който дава случайно число между 0 и 1). След това, това число трябва да го използваш за да получиш валидна стойност в диапазона който ти трябва (от 1 до 6 включително). Подходът е правилен (макар, че при него, 1 и 6 ще се падат по-рядко, но това е без значение в твоя случай), но в реализацията ти има грешка. Каква, предполагам ще откриеш сам. От това което е дадено обаче се вижда, че е рано да се занимаваш с това. Задачата изисква да се реализира логика за реализиране на меню с избор от него. Първо реализирай тази част, пък после се занимавай с детайлите. Това мнение е било редактирано от thrawn на 07-10-2022, 09:01 |
thrawn |
Публикувано на: 07-10-2022, 10:34
|
![]() Име: Група: Потребител Ранг: Почетен член Мнения: 3521 Регистриран на: 17.01.17 ![]() |
Всъщност, и така си работи, моя грешка...
![]() |
jordanElj |
Публикувано на: 27-10-2022, 12:38
|
Име: Група: Потребител Ранг: Новопостъпил Мнения: 19 Регистриран на: 25.09.22 ![]() |
Не мога да се справя с While loop който да задвижи играта.
Някой който може да помогне!? |
jordanElj |
Публикувано на: 27-10-2022, 12:40
|
||
Име: Група: Потребител Ранг: Новопостъпил Мнения: 19 Регистриран на: 25.09.22 ![]() |
|
||
thrawn |
Публикувано на: 28-10-2022, 12:52
|
![]() Име: Група: Потребител Ранг: Почетен член Мнения: 3521 Регистриран на: 17.01.17 ![]() |
Какво точно не можеш да направиш?
По условие, потребителя трябва да избере зар с число 1, 2 или 3 или да натисне q за изход. Наличието на това q в условието значи, че входът не е само числа, което значи, че nextInt() не върши работа. Трябва ти String за вход. С други думи, въртиш цикъл докато не получиш една от 4-те възможности за вход. След това проверяваш стойността. Ако е "q" излизаш от приложението. Ако е "1", "2" или "3" проверяваш дали съответния зар е хвърлен (гледаш съответната стойност diceOne, diceTwo или diceThree дали е различна от 0) и ако е караш потребителя да избере отново. Това го циклиш докато и 3-те зара не бъдат хвърлени. |
![]() |
![]() ![]() ![]() |