Професионална програма
Loading...
+ Нов въпрос
VarshilovNikolay avatar VarshilovNikolay 0 Точки

The area of the triangle composed by these 3 points

Здравейте, хора. От скоро започнах с изучаването на PHP и започнах с курса от 2014 година. Една задача от домашното ме затруднява и тя е написването на кода за изчисленията на плоскостта която заема определеният триъгълник съставен от 3 точки. Намерих формулата, но въпросът ми е как да я запиша ? 

 

<?php

// x and y coordinates, AxAy point in the coordinate. etc for B and C 

$Ax = -5;
$Ay = 10;
$Bx = 25;
$By = 30;
$Cx = 60;
$Cy = 15;

 function triangle($Ax, $Ay, $Bx, $By, $Cx, $Cy) {
     $triangle = $Ax($By-$Cy)+$Bx($Cy-$Ay)+$Cx($Ay-$By)/2;
     return $triangle;
     
 }
    echo "the area of the triangle = " . triangle(-5, 10, 25, 30, 60, 15);
?>

Тагове:
0
PHP Fundamentals
worminer avatar worminer 104 Точки
Best Answer

Здравей,
Като за начало ти предлагам да самите точки да ги подаваш като масив на функцията..

Може ли да дадеш линк към условието че не ми става много ясно какво се иска в задачата
 

$triangle = $Ax($By-$Cy)+$Bx($Cy-$Ay)+$Cx($Ay-$By)/2

тук ако се опитваш да ги разделиш всичките на 2 трябва да стане 
 

$triangle = ($Ax($By-$Cy)+$Bx($Cy-$Ay)+$Cx($Ay-$By))/2

защото в момента делиш само последното на 2

0
08/02/2017 17:05:25
VarshilovNikolay avatar VarshilovNikolay 0 Точки

https://softuni.bg/trainings/resources/officedocument/1235/domashno-php-mysql-jun-2014 

 

задачата е в съдържанието на документа: 

Triangle Area
0
worminer avatar worminer 104 Точки
<?php
// x and y coordinates, AxAy point in the coordinate. etc for B and C
$Ax = -5;
$Ay = 10;
$Bx = 25;
$By = 30;
$Cx = 60;
$Cy = 15;

  $triangle = ($Ax*($By-$Cy)+$Bx*($Cy-$Ay)+$Cx*($Ay-$By))/2;
    echo "the area of the triangle = " . $triangle;

ама не съм сигурен че това е формулата .. отговора се получи ама отрицателен..

 

0
08/02/2017 22:06:04
worminer avatar worminer 104 Точки
<?php
// x and y coordinates, AxAy point in the coordinate. etc for B and C
//$Ax = -5; //x1
//$Ay = 10; //y1
//$Bx = 25; //x2
//$By = 30; //y2
//$Cx = 60; //x3
//$Cy = 15; //y3

$Ax = 53; //x1
$Ay = 18; //y1
$Bx = 56; //x2
$By = 23; //y2
$Cx = 24; //x3
$Cy = 27; //y3

  $triangle = ($Ax*($By-$Cy)+$Bx*($Cy-$Ay)+$Cx*($Ay-$By))/2;
  $triangle = 0.5*(($Ax*($By-$Cy)) + ($Bx * ($Cy - $Ay) + ($Cx * ($Ay - $By))));
    echo "the area of the triangle = " . $triangle;

Ами да .. работи си кода по тоя начин .. аз намерих същата формула в нета и като въведох другия сет от числа си работи нормално .. което ме навежда до мисълта -че просто на този сет който си ползвал в условието е било написано с "-" но понеже това е транскрипция на истинския файл и най вероятно минуса е заминал на пътешествие .. както и да е . ако ти е помогнал отговора и си много навит, може да го избереш за best answer .. че трябва да се трупат точки..

0