Лабораторные работы по PHP

Недавно делал лабораторные работы по PHP для двух человек. Простенькие задания, которые я решил выложить здесь. Возможно, кому-то и пригодится.

1. Заданы координаты трех вершин треугольника (x1, y1), (x2, y2) и (x3, y3). Найти его периметр и площадь.

Для решения данной задачи найдем расстояние между двумя точками, затем вычислим периметр и площадь треугольника.

<?php
// Вершины треугольника
$x1 = 3;
$y1 = -3;
$x2 = 1;
$y2 = 2;
$x3 = -4;
$y3 = 4;

/**
 * Вычисляем расстояние между двумя точками
 */
$A = sqrt(pow($x2 - $x1, 2) + pow($y2 - $y1, 2));
$B = sqrt(pow($x3 - $x2, 2) + pow($y3 - $y2, 2));
$C = sqrt(pow($x3 - $x1, 2) + pow($y3 - $y1, 2));

// Вычисляем периметр треугольника
$P = $A + $B + $C;

// Вычисляем полупериметр треугольника для формулы Герона
$P2 = ($A + $B + $C) / 2;
// Вычисляем площадь треугольника
$S = sqrt($P2*($P2-$A)*($P2-$B)*($P2-$C));

echo 'Периметр треугольника = ' . round($P, 2) . '<br>';
echo 'Площадь треугольника = ' . round($S, 2);

2. Найти max{min(a,b), min(c,d)}

<?php
// Наши значения
$a = 2;
$b = 4;
$c = 7;
$d = 3;

echo 'Максимальное значение: ' . max(min($a, $b), min($c, $d));

3. Вычислить длину окружности и площадь круга одного и того же заданного радиуса R

<?php
// Величина радиуса окружности
$r = 10;

// Периметр окружности
$P = 2 * pi() * $r;

// Площадь окружности
$S = pi() * pow($r, 2);

echo 'Длина окружности (периметр) = ' . round($P, 2) . '<br>';
echo 'Площадь окружности = ' . round($S, 2);

4. Среди всех n-значных чисел указать те, сумма цифр которых равна данному числу k

<?php
// Задаваемое значение
$k = 10;

for ($i = 10; $i < 100; ++$i) {
    $i = (string)$i; // Строгая типизация как строки
    for ($j = 0, $s = 0; $j < 2; ++$j) {
        $s += (int)$i[$j]; // Суммирование и приведение к целочисленному типу
    }
    // Сравнение суммы с введенным значением $k
    if ($s == $k) {
        echo "Среди 2х-значных чисел выбраны числа, сумма которых = $k: " . $i  ."<br />";
    }
}

5. Составить программу, которая печатает таблицу умножения

<?php
for ($tr = 1; $tr <= 9; $tr++) {
  echo '<table border="0" cellspacing="2" cellpadding="1"><tr align="center">';
  for ($td = 1; $td <= 9; $td++) {
    if ($td == 1 || $tr == 1) {
      echo '<th width="25">' . $tr * $td . '</th>';
    } else {
      echo '<td width="25">' . $tr * $td . '</td>';
    }
  }
  echo '</tr>';
}
echo '</table>';

6. Подсчитать количество отрицательных чисел среди чисел а, b, c

<?php
// Значения чисел
$a = -2;
$b = -1;
$c = 10;

// Кол-во отрицательных чисел
$count = 0;

if( $a < 0) {
  $count++; // Увеличиваем значение переменной $count на 1
}

if( $b < 0) {
  $count++; // Увеличиваем значение переменной $count на 1
}

if( $c < 0) {
  $count++; // Увеличиваем значение переменной $count на 1
}

echo "Отрицательных чисел: $count";

Вот такие несложные задания. Их было несколько больше, но выложил наиболее интересные.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: