Loading...

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

InaAbadjieva avatar InaAbadjieva 8 Точки

Homework Loops - Odd/Even Position

Здравейте,
Tрябва ми малко помощ със следния код: http://pastebin.com/3n8fy1xQ. Като цяло работи програмата, но има проблем с max-овете и min-овете( в част от проверките запазват първоначалната си стойност). Последната част с изкарването на резултатите също надали е най-оптималната, но пък уж работи. Ще се радвам и на други варианти. Мерси предварително...

Тагове:
0
Programming Basics
Destinote avatar Destinote 5 Точки

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

namespace _11.OddEvenEverything
{
    class ОddEvenEverything
    {
        static void Main(string[] args)
        {
            int NumberOfLoops = int.Parse(Console.ReadLine());

            double OddSum = 0.00;
            double OddMin = double.MaxValue;
            double OddMax = double.MinValue;

            double EvenSum = 0.00;
            double EvenMin = double.MaxValue;
            double EvenMax = double.MinValue;

            for (int Index = 1; Index <= NumberOfLoops; Index++)
            {
                double Number = double.Parse(Console.ReadLine());

                if (Index % 2 != 0)
                {
                    OddSum += Number;

                    if (Number < OddMin)
                    {
                        OddMin = Number;
                    }
                    if (Number > OddMax)
                    {
                        OddMax = Number;
                    }
                }

                if (Index % 2 == 0)
                {
                    EvenSum += Number;

                    if (Number < EvenMin)
                    {
                        EvenMin = Number;
                    }
                    if (Number > EvenMax)
                    {
                        EvenMax = Number;
                    }
                }
            }

            Console.WriteLine($"OddSum={OddSum},");

            if (OddMin == double.MaxValue)
            {
                Console.WriteLine("OddMin= No,");
            }
            if (OddMax == double.MinValue)
            {
                Console.WriteLine("OddMax= No,");
            }
            else
            {
                Console.WriteLine($"OddMin={OddMin},");
                Console.WriteLine($"OddMax={OddMax},");
            }

            Console.WriteLine($"EvenSum={EvenSum},");

            if (EvenMin == double.MaxValue)
            {
                Console.WriteLine("EvenMin= No,");
            }
            if (EvenMax == double.MinValue)
            {
                Console.WriteLine("EvenMax= No,");
            }
            else
            {
                Console.WriteLine($"EvenMin={EvenMin},");
                Console.WriteLine($"EvenMax={EvenMax},");
            }
        }
    }
}

 

Ето моя код, който съм направил да е максимално четлив и приятен за гледане. Надявам се да помогне на някой. Целта в задачата е да се работи само с if конструкции, без else if понеже, когато работиш с else if конструкция, ако if конструкцията се изпълни, то тогава компютъра пренебрегва else if конструкцията и се връща направо в конструкцията за цикъла понеже else се използва само в случай, че предишния if не се е изпълнил. Доста от тези неща могат да се научат самостоятелно, без чужда помощ, ако се следи и обръща внимание на debugger-a, понеже той постъпково показва пътя на програмата и начина на мислене на машината. Препоръчвам всеки, който има проблеми с решаване на задачи, предварително да се позанимава малко с debugger-a, преди да потърси помощ в интернет.

0
13/03/2018 13:07:52
grafcheto avatar grafcheto 2 Точки

Не мога да разбера защо кода ми не работи както трябва: https://pastebin.com/gM9nYfkf

Когато имам отрицателна стойност, не се получава правилният отговор.

Идеята ми беше почти същата като от горния пост, но бях сложил няколко elsa-a повече. Сега го дооформих, но отново дава грешка. Проблемът е, че смята -2.5 за нечетно число, а явно е четно.

0
13/07/2019 14:38:56
MariyanNikov avatar MariyanNikov 16 Точки

@grafcheto,

Проблема идва от Math.Floor метода,който използваш.

Math.Floor(2.5) = 2 ,но

Math.Floor(-2.5) = -3 ,което всъщност си е нечетно число.

 

0
grafcheto avatar grafcheto 2 Точки

За съжаление не е това. Аз сложих floor-a (без да съобразя това, което ти казваш), точно защото смяташе -2.5 за нечетно. Когато го махна, пак се случва същото.

0
MariyanNikov avatar MariyanNikov 16 Точки

Проблема идва,че не си разбрал правилно задачата.

Ти сравняваш стойността на числото дали е четна или нечетна, а условието изисква да се провери самата последователност от числата.

Ако входа ти е : 4 , 1 , 3 , 5 , 7   -

първото число е номера на числата,които ще имаш,

1 и 5 са нечетните числа,защото са на нечетна позиция вкарани в конзолата.

3 и 7 са четните числа, защото са на четна позиция вкарани в конзолата.

0
Milko123 avatar Milko123 14 Точки

Здравейте, при мен конзолата ми печата max.Value i min.Value с абсолютните си стойности, моля за помощ!

https://pastebin.com/kQ68GgKr

 

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