Loading...
nikolaykk avatar nikolaykk 94 Точки

Homework: Primitive Data Types and Variables-Problem 16-Half Sum

Здравете,

В задачата е записано,че n е цяло число [0...500], а всички други числа, които въвеждаме са в диапазона [-500 000 ... 500 000].

Въпроса ми е при подобна задача на изпита трябва ли да включим код, който да проверява  входните данни или е важен просто алгоритъма?

Ето моето решение за момента:

using System;

    class HalfSum
    {
        static void Main()
        {
            Console.Write("Enter number of the sequence [0...500] n:");
            ushort n = ushort.Parse(Console.ReadLine());
            Console.WriteLine("Enter elements of the sequence, value [-500 000 ... 500 000]:");
            int[] sec1 = new int[n];
            int[] sec2 = new int[n];
            int sum1 = 0;
            int sum2 = 0;
            for (int i = 0; i < n; i++)
            {
                sec1[i] = int.Parse(Console.ReadLine());
                sum1 += sec1[i];
            }
            for (int i = 0; i < n; i++)
            {
                sec2[i] = int.Parse(Console.ReadLine());
                sum2 += sec2[i];
            }
            if(sum1==sum2)
            {
                Console.WriteLine("Yes,sum= {0}",sum1);
            }
            else
            {
                Console.WriteLine("No,diff= {0}", Math.Abs(sum1 - sum2));
            }
        }
    }

Ще се радвам на коментари.

Тагове:
0
Programming Basics
peterborisov avatar peterborisov 123 Точки

 int n = int.Parse(Console.ReadLine());
            int sum1 = 0;
            int sum2 = 0;

            for (int i = 0; i < n; i++)
            {
                int num1 = int.Parse(Console.ReadLine());
                sum1 += num1;
            }
            for (int i = 0; i < n; i++)
            {
                int num2 = int.Parse(Console.ReadLine());
                sum2 += num2;
            }
            if(sum1==sum2)
            {
                Console.WriteLine("Yes, sum={0}",sum1);
            }
            else
            {
                Console.WriteLine("No, diff={0}",Math.Abs(sum1-sum2));
            }

0
dgp_82 avatar dgp_82 19 Точки

Реших задачата по подобен начин, но в judge ми дава 0 точки. Ето го и кода, ще се радвам някой, ако ми покаже къде бъркам.

using System;

    class HalfSumContinue
    {
        static void Main()
        {
            int n = int.Parse(Console.ReadLine());
            int sumFirst = 0;
            for (int i = 0; i < n; i++)
            {
                int count = int.Parse(Console.ReadLine());
                sumFirst += count;
            }
            int sumSecond = 0;
            for (int i = 0; i < n; i++)
            {
                int countSecond = int.Parse(Console.ReadLine());
                sumSecond += countSecond;
            }
            if (sumFirst == sumSecond)
            {
                Console.WriteLine("Yes,sum={0}", sumFirst);
            }
            else
            {
                int absValue = Math.Abs(sumFirst - sumSecond);
                Console.WriteLine("No,diff={0}",absValue);
            }
        }
    }

0
peterborisov avatar peterborisov 123 Точки

Просто на тези редове трябва да сложиш празно място между "Yes, sum и No, diff и  ти дава 100 точки

така както съм ги преправил:


                Console.WriteLine("Yes, sum={0}", sumFirst);
                  
                Console.WriteLine("No, diff={0}",absValue);
            

1
31/05/2015 06:57:40
dgp_82 avatar dgp_82 19 Точки

Работи. Даде 100/100. Благодаря!

 

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