Професионална програма
Loading...
+ Нов въпрос
MilenaSl avatar MilenaSl 161 Точки
Best Answer

Queue трябва да е Queue<string>. Винаги трябва да задаваш типа, както при List<>

playedCards трябва да бъдат подредени първо по числото, после и по буквата, например с ThenByDescending(s => s.Last())

На ред 85 и 89 елементите от playedCards трябва да се enqueue-ват едно по едно, най-удобно е с foreach

На ред 55 трябва да се сложи проверка дали картите на някой от играчите не са по-малко от 3 и ако има, да се излезе и от двата while цикъла и да се принтира реззултата. 

Ако искаш преправи логиката на частта с битките с по 3 карти. Ето едно 100/100 https://github.com/MilenaPetkanova/csharp-advanced-softuni/blob/master/Exams/03-Number-Wars-25062017/NumberWars.cs

2
sevgin0954 avatar sevgin0954 557 Точки

Това за Queue защо трябва да задавам типа?Така просто мога да вкарвам различни типове данни.playedCards трябва да се подредят само по число. "На ред 85 и 89 елементите от playedCards трябва да се enqueue-ват едно по едно, най-удобно е с foreach" това реши проблема 100/100 laugh реално така съм вкарвал така "system int[] 32"

1
09/02/2018 12:29:59
Danny_Berova avatar Danny_Berova 205 Точки

Във вътрешния while не виждам никъде проверка дали и в двамата играчи има поне три карти, които да се вземат или да чистиш листа ако няма. На пръв поглед е това, иначе аз съм наредила проверките с друг приоритет и малко се обърквам. Бих сложила първо, ако картите са различни, кое на кого се разпределя като взета ръка и после другата логика.

0
sevgin0954 avatar sevgin0954 557 Точки

На 60 ред имам проверка дали някой е с останал без карти

0
Danny_Berova avatar Danny_Berova 205 Точки

Тази проверка я видях. Не видях проверка за deckOne.Count >= 3 && deckTwo.Count >= 3 или там както си ги наименовал в условието на вътрешния while, за да не влизаш в него ако нямаш поне три карти на всеки играч, които да смъкваш на масата и да добавяш в листа. :)

1