Loading...
dimitur98 avatar dimitur98 13 Точки

09. Longer Line

Здравейте,

в джъджа ми дава грешка на последния тест и не мога да я открия в кода си. Ако някой може да помогне. Ето го и кода ми :

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

namespace LongerLine
{
    class Program
    {
        static void Main(string[] args)
        {
            double x1 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            double x2 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            double y1 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            double y2 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            double z1 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            double z2 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            double m1 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
            double m2 = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);

            if ((Math.Abs(x1 - y1)) >= (Math.Abs(z1 - m1)) && (Math.Abs(x2 - y2)) >=(Math.Abs(z2 - m2)))
            {
               
                coordinats(x1, x2, y1, y2);
            }
            else
            {
                
                coordinats(z1, z2, m1, m2);
            }
        }
        static void coordinats(double x1, double x2, double y1, double y2)
        {

            if ((Math.Abs(x1) - Math.Abs(y1)) <= (Math.Abs(y1) - Math.Abs(x1)) && (Math.Abs(x2) - Math.Abs(y2)) <= (Math.Abs(y2) - Math.Abs(x2)))
            {
                Console.Write("({0}, {1})", x1, x2);
                Console.WriteLine("({0}, {1})", y1, y2);
            }
            else
            {
                Console.Write("({0}, {1})", y1, y2);
                Console.WriteLine("({0}, {1})", x1, x2);
            }

        }
    }
}

 

Тагове:
0
Programming Fundamentals
icowwww avatar icowwww 2779 Точки

 В метода coordinats реда  if ((Math.Abs(x1) - Math.Abs(y1)) <= (Math.Abs(y1) - Math.Abs(x1)) && (Math.Abs(x2) - Math.Abs(y2)) <= (Math.Abs(y2) - Math.Abs(x2)))

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

Използвай питагорова теорема за намирането на хипотенузата, в случая най-близката права от точката до центъра:

 double firstDiagonal = Math.Pow(x1, 2) + Math.Pow(x2, 2);
 double secondDiagonal = Math.Pow(y1, 2) + Math.Pow(y2, 2);

if (secondDiagonal>= firstDiagonal)

https://pastebin.com/n5p1rgWL

1
09/10/2017 14:39:48
todi111 avatar todi111 1 Точки

Здравейте,

в Judge получавам 60/100 точки на тази задача (не минавам тест 2 и 3). Не мога да открия проблема. Ето кода ми: https://pastebin.com/kLV30x7G

Бих се радвал ако може някой да удари едно рамо.

Окрих си грешката. При проверка, коя точка е по-близо до центъра на координатната система, бях забравил, че ако двете точки са на еднакво разстояние първата точка трябва да се изпише на конзолата, т.е. проверката трябва да бъде (<=).

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