Loading...
BozhidarGenov avatar BozhidarGenov 2 Точки

Programming Basics - 06.Account Balance

Здравейте,

Пробвах да реша следната задача поне 15 пъти, но не получавам повече от 60/100. Дебъгвах я няколко пъти и все пак не мога да разбера къде ми е грешката. Бих оценил малко помощ.
Ето го условието на задачата:

6. Баланс по сметка
Напишете програма, която пресмята колко общо пари има в сметката, след като направите определен брой
вноски. На първия ред ще получите колко вноски трябва да се направят. На всеки следващ ред ще
получавате сумата, която трябва да внесете в сметката, докато не се достигне броя вноски. При всяка
получена сума на конзолата трябва да се извежда "Your account balance was increased by: " +
сумата и тя да се прибавя в сметката. Ако получите число по-малко от 0 на конзолата трябва да се изведе
"Invalid operation!" и програмата да приключи. Когато програмата приключи трябва да се принтира
"Total balance: " + общата сума в сметката закръглена до втория знак след десетичната запетая.

Ето го и моето решение:

 

using System;

namespace AccountBalance
{
    class Program
    {
        static void Main(string[] args)
        {
            int entries = int.Parse(Console.ReadLine());
            int counter = 1;
            double currentSum = 0;

            while (counter <= entries)
            {
                double income = double.Parse(Console.ReadLine());
                if (income < 0)
                {
                    Console.WriteLine("Invalid Operation!");
                }
                else
                {
                    currentSum += income;
                    Console.WriteLine($"Your account balance was increased by: {income:f2}");
                }
                counter++;
            }
            Console.WriteLine($"Total balance: {currentSum}");
        }
    }
}

Предварително благодаря за помощта.

Тагове:
0
Programming Basics with C#
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

сложи 1 break като - а. Ако получите число по-малко от 0 на конзолата трябва да се изведе
&quot;Invalid operation!&quot; и програмата да приключи - ти подадат по малко от нула, хубаво си сложил проверката но са ти казали да спреш и цикъла...

0
NikolayNeykov92 avatar NikolayNeykov92 617 Точки

Здравей,

при невалидна операция трябва да спреш програмата.

Ако получите число по-малко от 0 на конзолата трябва да се изведе
&quot;Invalid operation!&quot; и програмата да приключи. 

втората грешка е "Invalid Operation!" трябва да е с малка буква.

ето поправката.

 

using System;

namespace AccountBalance
{
    class Program
    {
        static void Main(string[] args)
        {
            int entries = int.Parse(Console.ReadLine());
            int counter = 1;
            double currentSum = 0;

            while (counter <= entries)
            {
                double income = double.Parse(Console.ReadLine());
                if (income < 0)
                {
                    Console.WriteLine("Invalid operation!");
                    break;
                }
                else
                {
                    currentSum += income;
                    Console.WriteLine($"Your account balance was increased by: {income:f2}");
                }
                counter++;
            }
            Console.WriteLine($"Total balance: {currentSum}");
        }
    }
}

0
04/07/2018 21:32:17
BozhidarGenov avatar BozhidarGenov 2 Точки

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

0
DaniloH avatar DaniloH 1 Точки

Ето кода

using System;

namespace AccountBalance
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            double balance = 0.0; 
            while (input != "NoMoreMoney")
            {
                double amount = double.Parse(input);
                if (amount >= 0)
                {
                    balance += amount;
                    Console.WriteLine($"Increase: {amount:F2}");
                    input = Console.ReadLine();
                }
                else
                {
                    Console.WriteLine("Invalid operation!");
                    break;
                }

            }
            Console.WriteLine($"Total: {balance:F2}");
        }
    }
}
 

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