Loading...
quester avatar quester 3 Точки

[Exercises] Conditional Statements And Loops -Java- Problem 15.* Neighbour Wars(71/100)- Къде греша?

Здравейте, 

В джъдж изкарвам 71/100 точки, като ми гърми на тестове №2 и №4. Иначе видимо програмата работи. Съмнявам се в if-a на 47ми ред - проверката дали рунда е трети пореден.

кода в pastebin.com

Тагове:
0
Programming Fundamentals 24/09/2017 15:08:09
rabota85 avatar rabota85 15 Точки
Best Answer

Като гледам твоя код имаш точно този проблем. Когато проверяваш за "трети рунд" провери и дали някой преди това не е стигнал 0 health.

 

0
quester avatar quester 3 Точки

Ми нямаше да се сетя :(
Коригирах го както предложи и вече е 100/100. На 4та задача пак нещо подобно бях изпуснал. 

Благодаря !

0
rabota85 avatar rabota85 15 Точки

Моето решение, дано ти помогне да се ориентираш. За мен беше уловка,че ако на единия от двамата му остане 0 health на третата итерация му го вдигах с 10 и правеше още една докато излезе от while цикъла.Една от проверките го покрива и видях зор докато го открия.

using System;

namespace neighbourWars
{
    class Program
    {
        static void Main(string[] args)
        {
            int peshoDamage = int.Parse(Console.ReadLine());
            int goshoDamage = int.Parse(Console.ReadLine());
            int peshoHealth = 100;
            int goshoHealth = 100; 
            int cnt = 0;

            

            while (peshoHealth > 0 && goshoHealth > 0)
            {
                cnt++;
                if (cnt % 2 != 0)
                {
                    goshoHealth -= peshoDamage;
                    if (goshoHealth > 0)
                    {
                        Console.WriteLine($"Pesho used Roundhouse kick and reduced Gosho to {goshoHealth} health.");
                    }
                }
                else if (cnt % 2 == 0)
                {
                    peshoHealth -= goshoDamage;
                    if (peshoHealth > 0 )
                    {
                        Console.WriteLine($"Gosho used Thunderous fist and reduced Pesho to {peshoHealth} health.");
                    }
                }
                if (cnt % 3 == 0 && goshoHealth > 0 && peshoHealth > 0)
                {
                    peshoHealth += 10;
                    goshoHealth += 10;
                }
            }
            if (peshoHealth <= 0)
            {
                Console.WriteLine($"Gosho won in {cnt}th round.");
            }
            else if (goshoHealth <= 0)
            {
                Console.WriteLine($"Pesho won in {cnt}th round.");
            }
        }
    }
}
 

0
quester avatar quester 3 Точки

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

0
25/09/2017 00:33:15
DianaPacheva99 avatar DianaPacheva99 6 Точки

Това е и моето решение на C#

https://pastebin.com/x5HLSs29

0
jivko.ptkv avatar jivko.ptkv 1 Точки

https://github.com/jivkoptkv/javahw/blob/master/Main.java ето и едно решение на Java : )

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