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

Nested Loops - Lab - Задача 06. Travelling

Здравейте,

Тествах задачата с най-различни стойности и изглежда като да работи, но поради някаква причина в Judge на 3 теста ми дава Runtime error

Ето го и кода:

 

string Destination = Console.ReadLine();
            int cost = 0;
            int deposit = 0;
            int currentSum = 0;

            while (Destination!="End")
            {                
                cost = int.Parse(Console.ReadLine());

                while (currentSum<cost)
                {
                    deposit = int.Parse(Console.ReadLine());
                    currentSum = currentSum + deposit;

                }

                Console.WriteLine($"Going to {Destination}!");
                currentSum = 0;
                Destination = Console.ReadLine();
            }

0
C# Fundamentals
chrisi2712 avatar chrisi2712 246 Точки
Best Answer

Здравейте,поправих кода сега е 100/100. Първо тук не е казано в условието, но променливите са тип double, за да мине през judge. Също така currentSum , трябва да се занулява всеки път,след като отиде на ваканиция, защото парите са свършили и трябва да започне да спестява наново.

using System;

namespace SumSeconds
{
    class Program
    {
        static void Main(string[] args)
        {
            string Destination = Console.ReadLine();
            double cost = 0;
            double deposit = 0;
           

            while (Destination != "End")
            {
                cost = double.Parse(Console.ReadLine());
                double currentSum = 0;

                while (currentSum < cost)
                {
                    deposit = double.Parse(Console.ReadLine());
                    currentSum = currentSum + deposit;

                }

                Console.WriteLine($"Going to {Destination}!");
                currentSum = 0;
                Destination = Console.ReadLine();
            }
        }
    }
}

0
TNedyalk avatar TNedyalk 2 Точки

Много благодаря :) 

1
ivanova_iliana avatar ivanova_iliana 9 Точки

Проблема наистина е, че променливите трябва да са double. Ето и моето решение:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Travelling
{
    class Program
    {
        static void Main(string[] args)
        {
            string destination = Console.ReadLine();

            while (destination != "End")
            {
                double budget = double.Parse(Console.ReadLine());
                double saveMoney = 0;
                while (saveMoney < budget)
                {
                    saveMoney = saveMoney + double.Parse(Console.ReadLine());
                }
                Console.WriteLine($"Going to {destination}!");
                destination = Console.ReadLine();

            }

        }
    }
}
 

0