Loading...
AleksanderKostadinov avatar AleksanderKostadinov 12 Точки

[Exam Problems] Sample Coding 101 Exam - Jan 2016 Зад.1

Решавам стари изпити

https://judge.softuni.bg/Contests/#!/List/ByCategory/38/Programming-Basics-Exams

Някой знае ли защо получавам 40/100 на първа задача  с това решение.

Задачата е лице на триъгълник.

double x1 = double.Parse(Console.ReadLine());
            double y1 = double.Parse(Console.ReadLine());
            double x2 = double.Parse(Console.ReadLine());
            double y2 = double.Parse(Console.ReadLine());
            double x3 = double.Parse(Console.ReadLine());
            double y3 = double.Parse(Console.ReadLine());
            double a = x3 - x2;
            double h= y1 - y2;
            double Aria =  a* h / 2;
            Console.WriteLine(Aria);

Тагове:
0
Programming Basics
Plamen27 avatar Plamen27 599 Точки

Тук ти е грешката:

      double a = x3 - x2;
       double h= y1 - y2;

Трябва да стане:

double a = Math.Abs(x3 - x2);
double h = Math.Abs(y2 - y1);

1
svetljo avatar svetljo 27 Точки

Вземи накрая абсолютна стойност

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            double x1 = double.Parse(Console.ReadLine());
            double y1 = double.Parse(Console.ReadLine());
            double x2 = double.Parse(Console.ReadLine());
            double y2 = double.Parse(Console.ReadLine());
            double x3 = double.Parse(Console.ReadLine());
            double y3 = double.Parse(Console.ReadLine());
            double a = x3 - x2;
            double h = y1 - y2;
            double Aria = a * h / 2;
            Console.WriteLine(Math.Abs(Aria));
        }
    }
}
 

1
Konstantin_Kosev avatar Konstantin_Kosev 12 Точки


Пробвайте с това

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

namespace AreaOfTriangleInPlane
{
    class Program
    {
        static void Main(string[] args)
        {
            //x1, y1, x2, y2, x3, y3.
         //   int sideA = pointX - pointx;
           // int heightH = pointY - pointY;
          //  int areaS = sideA * heightH / 2;
           // Console.WriteLine("{0}",areaS);
            int x1 = int.Parse(Console.ReadLine());
            int y1 = int.Parse(Console.ReadLine());
            int x2 = int.Parse(Console.ReadLine());
            int y2 = int.Parse(Console.ReadLine());
            int x3 = int.Parse(Console.ReadLine());
            int y3 = int.Parse(Console.ReadLine());

            double sideA = Math.Abs(x2 - x3);
            double heightH = Math.Abs(y1 - y3);
            double areaS = sideA * heightH / 2;
            Console.WriteLine("{0:F2}",areaS);

        }
    }
}


 

0
06/07/2016 21:47:56
borislav9212 avatar borislav9212 745 Точки

Всичките решения който дадоха колегите са идентични. Проблема е че ти липсва Math.Abs().

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