Занимательные задачи PHP
338 subscribers
1 photo
15 links
Ваша цель: решить задачу максимально изящно и просто. Предлагайте свои варианты решения в комментариях. Задачи выходят по будням в 14.00.
Download Telegram
Задача 53
Увеличение цены в тексте

Дана строка с текстом. В этом тексте есть цены в долларах:
'текст 10$ текст 20$';

Найдите все цены в этой строке и увеличьте их на 10%:
'текст 11$ текст 22$';
Задача 54
Добрый unique

Сделайте функцию, которая будет удалять дубли, встречающиеся более 3-х раз.
Задача 55
Уровень вложенности многомерного массива

Дан произвольный многомерный массив. Определите максимальный уровень вложенности этого массива.
Задача 56
N случайных элементов массива

Дан массив. Запишите в другой массив N случайных элементов из него так, чтобы один элемент был использован только один раз.
Задача 57
Количество единиц

Найдите суммарное количество единиц в числах от 1 до 100.
Задача 58
Подсчет слов, начинающихся на букву

Напишите функцию, которая подсчитает, сколько слов в строке начинаются на заданную букву.
Задача 59
Варианты товаров

Дан массив товаров с ценами. Дана сумма. Выведите все возможные комбинации товаров, которые можно купить на эту сумму.
Задача 60
Треугольник Паскаля

Нарисуйте в браузере треугольник Паскаля произвольного размера.
Задача 61
Имена файлов в транслит

Напишите скрипт, который считывает название файлов из папки и, если эти названия на русском, меняет их на транслит.
Задача 62
Периодические дроби

Реализуйте функцию, которая будет принимать два целых числа, и проверять, результатом деления получается периодическая дробь или нет.
Задача 63
Подсчет слов, заканчивающихся на букву

Напишите функцию, которая подсчитает, сколько слов в строке заканчиваются на заданную букву.
Задача 64
Периодические дроби

Реализуйте функцию, которая будет принимать два целых числа, а возвращать результат деления одного на второе. При этом, если получается периодичская дробь, то ответ следует вывести примерно в таком виде: 1.(428571).
Задача 65
Множественное число англ. слов

Напишите функцию, которая из единственного числа английского существительного делает множественное. Не забудьте про слова-исключения.
Задача 66
Преобразование в camelCase

Напишите функцию, которая преобразует строки вида var_php_test в varPhpTest.
Задача 67
Удалить третий пробел

Дана строка. Удалите из нее третий пробел. Пример: строка '12 34 56 78' станет '12 34 5678'.
Задача 68
Узнать дату

Найдите, какое число было 100 дней назад.
Задача 69
Все переставновки цифр

Дано число. Выведите на экран все возможные перестановки его цифр.
Задача 70
Проверка на повторяющиеся элементы

Определите, есть ли в массиве повторяющиеся элементы.
Задача 71
Пирамидка без цикла

Нарисуйте следующую пирамидку, не используя цикл:
1
22
333
4444
55555
666666
7777777
88888888
999999999

Конечно же, вручную повыводить все ряды не допускается:)
Задача 72
Случайное число из двух промежутков

Сгенерируйте случайное целое число из промежутка от 10 до 30 и от 50 до 80.
Задача 73
Разные случайные числа

Сделайте функцию, которая выводит случайное число от 1 до 100. При этом вызовы функции не должны выдавать два одинаковых числа подряд.