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

Начинаем уже завтра!

Вступайте для записи:
https://t.me/+nTaE5Nx9qWw3YzZi

Всем пхпшникам обязательно:)
🔥2
Задача 42
Сложение часов и минут

Напишите функцию, которая корректно будет складывать часы и минуты. Пример:
<?php
func('1ч 20 мин + 50 мин') // 2ч 10 мин
?>
👍2🕊1
Задача 43
Разбитие строки до пробела

Обрежьте длинную строку так, чтобы ее длина была не более N символов. При этом слова не должны быть разорваны - обрезание всегда проходит по пробелу и новая строка всегда меньше N.
👍2🕊1
Задача 44
Подсчет цифр в числах

Подсчитайте суммарное количество цифр в числах от 1 до 1 000 000.
👍2👏1🕊1
Задача 45
Подсчет многомерного массива

Дан многомерный массив. Подсчитайте количество элементов, не являющихся массивами, во всех уровнях вложенности.
👍3🕊1
Задача 46
Сложность пароля

Проверьте сложность пароля. Сложный пароль - это пароль с маленькими латинскими, большими латинскими буквами, цифрами и спецсимволами. Придумайте свои критерии, например, не должно идти несколько одинаковых символов подряд и так далее.
При решении задачи указывайте свои критерии также.
👍5🕊1
Задача 47
Проникновение массивов

Напишите функцию, которая параметрами будет принимать два массива:
<?php
$res = func([1, 2, 3], ['a', 'b', 'c']);
?>

А в качестве результата сливать эти массивы таким образом:
<?php
var_dump($res); // [1, 'a', 2, 'b', 3, 'c']
?>
👍4🕊1
Задача 48
Частотная сортировка массива

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

Пример. На вход функции подаем следующий массив:
[5, 9, 2, 4, 1, 2, 5, 8, 2, 2, 8, 4, 5]

В результате после сортировки получим следующий массив:
[2, 2, 2, 2, 5, 5, 5, 4, 4, 8, 8, 9, 1]
👍2🕊1
Задача 49
Найти все целые решения

Найдите все ЦЕЛЫЕ решения уравнения x^y = y^x.
👍2🕊1
Задача 50
Дружественные числа

Сделайте функцию, которая будет проверять, являются ли два числа дружественными.
👍3🕊1
Задача 51
Совершенные числа

Сделайте функцию, которая будет проверять, является ли число совершенным.
👍2🕊1
Задача 52
Рост массива с исключением

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

Задача с реального проекта, анализ ставок тотализатора, дана в упрощенном виде.
👍2🕊1
Задача 53
Увеличение цены в тексте

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

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

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

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

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

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

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

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

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

Напишите скрипт, который считывает название файлов из папки и, если эти названия на русском, меняет их на транслит.
👍2🕊1