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
VarshilovNikolay avatar VarshilovNikolay 0 Точки

Да, сработи. Така като гледам съм изтървал втората запетая и накрая на echo съм забравил да сложа точка за съединение с $triangle. Благодаря 

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