Loading...
nikoleta.panayotova avatar nikoleta.panayotova 2 Точки

Интересни и полезни решения и макар, че темата е стара, ще се включа с моите примери. Основно съм разделила условието на 2 възможности: Едната е двете числа да са цели, втората, която е по-трудна, дава възможност за плаваща запетая. Когато се събират цифрите на число тип double, това става чрез конвертиране в стринг. Още в началото съм закоментирала по няколко различни начина входът от конзолата input да се разцепи на 2 отделни числа чрез разделител. Всички закоментирани начини работят и точките са 100/100.
...
Първи начин за целочислен тип:

int lines = int.Parse(Console.ReadLine());
long sumDigits = 0;

while (lines > 0)
{
    string[] input = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries);

    long firstN = long.Parse(input[0]);
    long secondN = long.Parse(input[1]);

    //string firstNumber = input[0];
    //string secondNumber = input[1];

    //long.TryParse(firstNumber, out long firstN);
    //long.TryParse(secondNumber, out long secondN);

    if (firstN > secondN)
    {
        firstN = Math.Abs(firstN);
        while (firstN > 0)
        {
            sumDigits += firstN % 10;
            firstN /= 10;
        }
    }
    else
    {
        secondN = Math.Abs(secondN);

        while (secondN > 0)
        {
            sumDigits += secondN % 10;
            secondN /= 10;
        }
    }

    Console.WriteLine(sumDigits);

    sumDigits = 0;

    lines--;
}
...
Втори начин за числа с плаваща запетая:

 

int lines = int.Parse(Console.ReadLine());
double sumDigits = 0;

while  (lines > 0)
{
    string input = Console.ReadLine();

    //several other disolvings:

    //string[] input = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries);
    
    //char[] separator = {' '};
    //string[] numbers = input.Split(separator);

    //string firstNumber = string.Split(input[0], ' ');

    string[] numbers = input.Split(' ');
    string firstNumber = numbers[0];
    string secondNumber = numbers[1];

    double.TryParse(firstNumber, out double firstN);
    double.TryParse(secondNumber, out double secondN);

    if(firstN > secondN)
    {
            string firstNumer = firstN.ToString();

            for (int i = 0; i < firstNumber.Length; i++)
            {
                int.TryParse(Convert.ToString(firstNumber[i]), out int digit);
                sumDigits += digit;
            }
    }
    else
    {
        string secondNumer = secondN.ToString();

        for (int i = 0; i < secondNumber.Length; i++)
        {
            int.TryParse(Convert.ToString(secondNumber[i]), out int digit);
            sumDigits += digit;
        }
    }

    Console.WriteLine(sumDigits);

    sumDigits = 0;
    
    lines--;
}

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