Учебные задачи для начинающих изучать PHP. Задачи 12-14

Задача 12

Даны два массива по 20 элементов каждый. Сравните каждый 3-ий элемент 1-ого массива с каждый 2-ым элементов 2-ого массива.

<?php
function fillArray($howManyElements)
{
    for ($i=1; $i<=$howManyElements; $i++) {
        $varArray[$i] = rand(-100, 100);
    }
    return $varArray;     
}
function printArray($serialNumber, $varArray)
{
    echo "Это ", $serialNumber, "-й массив<br>";
    foreach ($varArray as $value) {
        echo $value, " ";
    }
    echo '<br><br>';
}
function compareArrays($N, $array1, $array2)
{
    $i = 3;
    $j = 2;
    while (($i<=$N) and ($j<=$N)) {
        if ($array1[$i] > $array2[$j]) {
            echo $array1[$i] . ' больше ' . $array2[$j];
        }
        elseif ($array1[$i] < $array2[$j]) {
            echo $array1[$i] . ' меньше ' . $array2[$j];   
        }
        else {
            echo $array1[$i] . ' равно ' . $array2[$j];   
        }
        $i += 3;
        $j += 2;
        echo "<br>";
    }
}
$N = 20;
$array1 = fillArray($N);
$array2 = fillArray($N);
printArray(1, $array1);
printArray(2, $array2);
compareArrays($N, $array1, $array2);

Задача 13

Создайте функцию, которая принимает на вход массив случайных чисел из диапазона [5..12]. Обходит этот массив и делает для каждого элемента следующее:
Если число равно 5, то выведете на экран строку "пять", если 6, то "шесть", если 7, то число "7", иначе строку "какое-то другое число".

<?php
function fillArray($howManyElements, $min, $max)
{
    for ($i=1; $i<=$howManyElements; $i++) {
        $varArray[$i] = rand($min, $max);
    }
    return $varArray;     
}
function printArray($varArray)
{
    foreach ($varArray as $value) {
        echo $value, " ";
    }
    echo '<br><br>';
}
function task($arr)
{
    echo "Состав нашего массива:<br><br>";
    foreach ($arr as $value) {
        switch ($value)
        {
            case 5:
                echo "пять";
                break;
            case 6:
                echo "шесть";
                break;
            case 7:
                echo "семь";
                break;   
            default :
                echo "Какое-то другое число";
                break;      
        }
        echo "<br>";
    }
}
$N = 20;
$minElem = 5;
$maxElem = 12;
$myArray = fillArray($N, $minElem, $maxElem);
printArray($myArray);
task($myArray);

Задача 14

Есть два массива "a" и "b". На вход вашей программе подаётся массив "a" случайных чисел (10 элементов) из диапазона от 1 до 20. Задача: вывести на экран все числа, которые не содержатся в массиве "b"

<?php
function fillArray($howManyElements, $min, $max)
{
    for ($i=1; $i<=$howManyElements; $i++) {
        $varArray[$i] = rand($min, $max);
    }
    return $varArray;     
}
function printArray($varArray, $nameArray)
{
    echo "Массив ", $nameArray, ":<br>";
    foreach ($varArray as $value) {
        echo $value, " ";
    }
    echo '<br><br>';
}
function task($N, $minElem, $maxElem, $arr)
{
    $b = [12, 5, 17, 6, 4];
    echo "СПОСОБ 1 - Без использования in_array():<br>";
    foreach ($arr as $valueA) {
        $flag = false;
        foreach ($b as $valueB) {
            if ($valueA == $valueB) {
                $flag = true;
                break;
            }
        }
        if ($flag == false) {
            echo $valueA . " ";
        }
    } 
    echo "<br><br>СПОСОБ 2 - С использованием in_array():<br>";
    foreach ($arr as $valueA) {
        if (!in_array($valueA, $b)) {
            echo $valueA . " ";
        }
    }
}
$N = 10;
$minElem = 1;
$maxElem = 20;
$a = fillArray($N, $minElem, $maxElem);
printArray($a, '$a');
task($N, $minElem, $maxElem, $a);