Занимательные задачи PHP. Часть 50
Дан массив чисел:
<?php
$arr = [2, 3, 4, 5, 6, 7, 8, 9];
?>
Найдите все возможные тройки чисел из этого массива, которые образуют геометрическую прогрессию.
Дана папка с файлами. Найдите
все файлы, которые
содержат более 10 различных
символов, и выведите
их пути и количество
различных символов.
Дан многомерный массив:
<?php
$arr = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
];
?>
Найдите все возможные пути от левого верхнего угла до правого нижнего, двигаясь только вправо или вниз. Выведите путь с минимальной суммой чисел.
Дан файл с текстом. Найдите в нем все предложения, которые содержат более одного восклицательного знака, и запишите их в новый файл, каждое предложение на своей строке.
Дана папка с файлами и подпапками. Найдите все файлы, имена которых начинаются с заглавной буквы, и выведите их пути.
Дан многомерный массив:
<?php
$arr = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
];
?>
Замените все элементы ниже главной диагонали на нули:
[
[1, 2, 3],
[0, 5, 6],
[0, 0, 9],
]
Дан файл с текстом. Найдите
в нем все слова, которые
содержат букву 'o'
ровно три раза, и запишите
их в новый файл
в порядке появления.
Дан массив чисел:
<?php
$arr = [1, 2, 3, 4, 5, 6];
?>
Найдите все возможные
способы расставить между
этими числами знаки
'+', '-' и '*' так, чтобы
получилось выражение,
равное 10.
Дана папка с файлами. Найдите все файлы, которые были созданы в один и тот же день, и выведите их пути, сгруппированные по дате.
Дан многомерный ассоциативный массив:
<?php
$arr = [
'a' => ['b' => 1, 'c' => ['d' => 2]],
'e' => ['f' => ['g' => 3]],
'h' => 4,
];
?>
Найдите все значения, которые являются числами, и выведите их в порядке возрастания глубины вложенности.