Софтуерно Инженерство
Loading...
+ Нов въпрос
Maver avatar Maver 5 Точки

Проблем с задачка 08.Fishing - Nested Loops - Java

Здравейте пак,

     Реших си задачка от вложени цикли - 08.Fishing, обаче улавям на дебъгера, че програмата спира след въвеждането на кг-те на 3-тата риба.  Оглеждах си скоби условия и т.н. и не мога да си обясне защо спира там. Някой може ли да ми окаже съдействие, не търся друго решение просто искам да си обясня, защо се получава това.Благодаря предварително!

https://pastebin.com/WuWnSY0S

Тагове:
0
Programming Basics with Java
chrisi2712 avatar chrisi2712 246 Точки

При мен този проблем се оправи когато сложих проверката общо рибите след всички останали изчисленията.

using System;

namespace Fishing
{
    class Program
    {
        static void Main(string[] args)
        {
            int fishesPerDay = int.Parse(Console.ReadLine());
            string input = Console.ReadLine();
            int counterFishes = 0;
            double profit = 0;
            double moneyToPay = 0;

            while(input!="Stop")
            {
                double fishKG = double.Parse(Console.ReadLine());
                counterFishes++;
                int sumSymbols = 0;
                double sum = 0;

                for (int position=0; position<input.Length; position++)
                {
                    char symbol = input[position];
                    sumSymbols += symbol;
                }

                sum = sumSymbols / fishKG;

                if(counterFishes%3==0)
                {
                    profit += sum;
                }
                else
                {
                    moneyToPay += sum;
                }

                if (counterFishes == fishesPerDay)
                {
                    Console.WriteLine($"Lyubo fulfilled the quota!");
                    break;
                }

                input = Console.ReadLine();
            }

            bool profitOrBill = profit >= moneyToPay;
            if (profitOrBill)
            {
                double leftMoney = profit - moneyToPay;
                Console.WriteLine($"Lyubo's profit from {counterFishes} fishes is {leftMoney:F2} leva.");
            }
            else
            {
                double lostMoney = moneyToPay - profit;
                Console.WriteLine($"Lyubo lost {lostMoney:F2} leva today.");
            }
        }
    }
}

0
Maver avatar Maver 5 Точки

Решена 100/100, след много оглеждане и сравнения намерих няколко грешки. Благодаря на колегата/колежката за съдействието, както и на всички останали, които си загубиха времето в опит да помогнат.

1