Loading...
Rumyanarusimova avatar Rumyanarusimova 20 Точки

ЗадачаOdd/Even position

Здравейте!

Някой може ли да ми обясни защо кода не работи- 0 точки, и се изписват някакви странни числа.Благо

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

namespace Odd_Even_position
{
    class Program
    {
        static void Main(string[] args)
        {
            var n = double.Parse(Console.ReadLine());
            var oddSum = 0.0;
            var oddMin = double.MaxValue;
            var oddMax = double.MinValue;
            var evenSum = 0.0;
            var evenMin = double.MaxValue;
            var evenMax = double.MinValue;

            for (int i = 0; i < n; i++)
            {
                var num = double.Parse(Console.ReadLine());
                if (i % 2 != 0.0)
                {
                    oddSum += num;
                    if (num > oddMax)
                    {
                        oddMax = num;
                    }

                    if (num < oddMin)
                    {
                        oddMin = num;
                    }

                    else
                    {

                        evenSum += num;
                        if (num > evenMax)
                        {
                            evenMax = num;
                        }
                        if (num < evenMin)
                        {
                            evenMin = num;
                        }
                    }
                    if (n == 0)
                    {
                        Console.WriteLine("oddSum = 0, oddMin = No, oddMax = No, evenSum = 0, evenMin = No, evenMax = No");
                    }
                    else if (n == 1)
                    {
                        Console.WriteLine("oddSum = {0}, oddMin = {1}, oddMax = {2}, evenSum = 0, evenMin = No, evenMax = No", oddSum, oddMin, oddMax);

                    }
                    else
                    {
                        Console.WriteLine("oddSum ={0}, oddMin = {1}, oddMax = {2},evenSum = {3}, evenMin = {4}, evenMax = {5}"
                          ,oddSum, oddMin, oddMax, evenSum, evenMin, evenMax);

                    }
                }
            }

        }
    }
}

       
    
        

    

            

            
        

    

    
    


 

даря предварително.

0
Programming Basics
koksibg avatar koksibg 892 Точки

Ето моя код - разгледай го. Сега нямам възможност да ти разгледам кода по - добре.

http://pastebin.com/m4UuVcpZ

0
stanchev1 avatar stanchev1 122 Точки

Ето едно решение и от мен : http://pastebin.com/fnhBkMa0 . Ако нещо не ти е ясно питай ще се опитам да помогна.

0
stanchev1 avatar stanchev1 122 Точки

За нищо.Успех напред :)

0
StefkaVasileva avatar StefkaVasileva 250 Точки

Като за начало в условието на задачата в подсказките е посочено за  минимум / максимум,  да се заделят например 1000000000.0 и -1000000000.0., там е първата ти грешка. Другата е , че цикълът започва от 0 ,а в условието е дадено да се брой от 1. по този начин се разместват четни и нечетни позиции. И последната грешка е ,че проверката за четните ти е в if конструкцията с която проверяваш за нечетни числа.

Оправих ти кода , вече дава 100/100. Ако имаш върпоси питай. 

http://pastebin.com/tUU5Fi7H

2
06/10/2016 11:36:06
Rumyanarusimova avatar Rumyanarusimova 20 Точки

Много благодаря!

0
morski77 avatar morski77 137 Точки

Съжалявам - простичко,но това е решение за Odd/Even sum.

Грешката е при менcrying

0
VenciSarov avatar VenciSarov 37 Точки

Почни цикъла от 1. Друга грешка не можах да видя и един съвет: позлвай дебъгера, бързо ще си намираш грешките с него.

Ето едно мое решение на въпросната задача:

using System;

class Program
{
    static void Main()
    {
        int n = int.Parse(Console.ReadLine());

        double oddSum = 0;
        double evenSum = 0;

        double oddMax = double.MinValue;
        double oddMin = double.MaxValue;

        double evenMax = double.MinValue;
        double evenMin = double.MaxValue;

        for (int i = 1; i <= n; i++)
        {
            double num = double.Parse(Console.ReadLine());
            if (i % 2 != 0)
            {
                oddSum += num;

                if (num > oddMax)
                {
                    oddMax = num;
                }
                if (num < oddMin)
                {
                    oddMin = num;
                }
            }
            else
            {
                evenSum += num;
                if (num > evenMax)
                {
                    evenMax = num;
                }
                if (num < evenMin)
                {
                    evenMin = num;
                }
            }
        }
        if (n == 0)
        {
            Console.WriteLine("OddSum={0},", oddSum);
            Console.WriteLine("OddMin=No,");
            Console.WriteLine("OddMax=No,");
            Console.WriteLine("EvenSum={0},", evenSum);
            Console.WriteLine("EvenMin=No,");
            Console.WriteLine("EvenMax=No");
        }
        else if (n == 1)
        {
            Console.WriteLine("OddSum={0},", oddSum);
            Console.WriteLine("OddMin={0},", oddMin);
            Console.WriteLine("OddMax={0},", oddMax);
            Console.WriteLine("EvenSum={0},", evenSum);
            Console.WriteLine("EvenMin=No,");
            Console.WriteLine("EvenMax=No");
        }
        else
        {
            Console.WriteLine("OddSum={0},", oddSum);
            Console.WriteLine("OddMin={0},", oddMin);
            Console.WriteLine("OddMax={0},", oddMax);
            Console.WriteLine("EvenSum={0},", evenSum);
            Console.WriteLine("EvenMin={0},", evenMin);
            Console.WriteLine("EvenMax={0}", evenMax);
        }

    }
}

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