помогите прописать условие циклом

madlian

Новичок
Задача, есть числа в интервале х(1 - 2.6) и y(2 - 3.2) и есть заба x из 60 цифр начиная от 1 и по парядку до 60 и база y из 60 цифр начиная от 1 и по парядку до 60 нужно сделать условие которое бы проверяло каждое число входит ли оно в промежуток x и y если число входит в оба интервала то писать цифру 1 если нет то 0 и так с каждым числом до 60, затем сложить единички.
пример
1 - 2.6 в этом промежутке попадает Х1 со значением 1
2 - 3.2 в этом промежутке попадает Y1 со значением 2
все оба значения верно значит нужно писать 1 и так проверять с каждым числом по порядку x y


я прописал условие
PHP:
	$at = $_POST['x1'];                                            //тут со значением 1
	$ata = $_POST['y1'];                                          //тут со значением 2
if($at >= 1 and $at <2.6 &&$ata >= 2 and $ata <3.2)
{
$n1 = 1;
}
else
{
$n1 = 0;
}
	$at = $_POST['x2'];
	$ata = $_POST['y2'];
if($at >= 1 and $at <2.6 && $ata >=  2 and $ata <3.2)
{
$n2 = 1;
}
else
{
$n2 = 0;
}
и так с каждым числом проверять до 60

проблема моя в том что немогу прописать это циклом for
помогите прописать такое условие циклом чтоб проверяло каждое число x и y
 

antson

Новичок
Партнер клуба
1 год изучения информатики. лаба на знание циклов и массивов, операторов условного ветления

input name="x1" заменить на input name="x[1]" . аналогично для y .
В результате вместо 120 переменных у тебя будут два массива
PHP:
// входные массивы от формы ввода
    $x_ar = $_POST['x'];
    $y_ar = $_POST['y'];   
// границы квадрата
$x_min=;
$x_max=;
$y_min=;
$y_max=;
//
 $ar_count = count($_POST['x'])
 if($ar_count <> count($_POST['y'])){
   die ('Неправильная форма ввода. Количество х-ов отличается от кол-ва y-ков');
 }
// Счетчик попавших
$CountDotsInSquare=0;
// цикл по массивам
for($i=1;$i<=$ar_count;$i++){
  $x=$x_ar[$i];$y=$y_ar[$i]; // текущая пара координат
  // проверяем что координаты попадают в заданный квадрат
  if(  ($x>=$x_min && $x<=$x_max)  &&  ($y>=$y_min && $y<=$y_max) ){
    $CountDotsInSquare++;
  }
}
 
Сверху