Задачи PHP: упражнения, практика, решение
PHP Challenges - 1 [25 упражнений с решением]
[ Внизу страницы доступен редактор для написания и выполнения сценариев. ]
1. Напишите программу PHP, чтобы проверить, является ли данное положительное целое число степенью двойки. Перейти к редактору
Вход: 4
Выход: 4 - сила 2
Нажмите меня, чтобы увидеть образец решения
2. Напишите программу PHP, чтобы проверить, является ли данное положительное целое число степенью три. Перейти к редактору
Вход: 9
Выход: 9 - это сила 3
Нажмите меня, чтобы увидеть образец решения
3. Напишите программу PHP, чтобы проверить, является ли данное положительное целое число степенью четыре. Перейти к редактору
Вход: 4
Выход: 4 - сила 4
Нажмите меня, чтобы увидеть образец решения
4. Напишите программу PHP, чтобы проверить, является ли целое число степенью другого целого числа. Перейти к редактору
Вход: 16, 2
Выход: 16 это сила 2
Пример: для x = 16 и y = 2 ответом является «истина», а для x = 12 и y = 2 «ложь»
Нажмите меня, чтобы увидеть образец решения
5. Напишите программу PHP, чтобы найти пропущенные числа в массиве. Перейти к редактору
Вход: 1,2,3,6,7,8
Выход: массив
(
[3] => 4
[4] => 5
)
Нажмите меня, чтобы увидеть образец решения
6. Напишите программу PHP, чтобы найти три числа из массива так, чтобы сумма трех последовательных чисел равнялась нулю. Перейти к редактору
Ввод: (-1,0,1,2, -1, -4)
Выход: массив
(
[0] => -1 + 0 + 1 = 0
)
Нажмите меня, чтобы увидеть образец решения
7. Напишите программу PHP, чтобы найти три числа из массива так, чтобы сумма трех последовательных чисел равнялась данному числу. Перейти к редактору
Вход: (массив (2, 7, 7, 1, 8, 2, 7, 8, 7), 16))
Выход: массив
(
[0] => 2 + 7 + 7 = 16
[1] => 7 + 1 + 8 = 16
)
Нажмите меня, чтобы увидеть образец решения
8. Напишите программу PHP для вычисления и возврата квадратного корня из заданного числа. Перейти к редактору
Вход: 16
Выход: 4
Нажмите меня, чтобы увидеть образец решения
9. Напишите программу PHP, чтобы найти одно число в массиве, которое не встречается дважды. Перейти к редактору
Вход: массив (5, 3, 4, 3, 4)
Выход: массив
(
[0] => 5
[1] => 3
[2] => 4
[3] => 3
[4] => 4
)
Одноместный номер: 5
Нажмите меня, чтобы увидеть образец решения
10. Напишите программу PHP, чтобы найти единственный элемент в массиве, где каждый элемент появляется три раза, кроме одного. Перейти к редактору
Вход: массив (5, 3, 4, 3, 5, 5, 3)
Выход: массив
(
[0] => 5
[1] => 3
[2] => 4
[3] => 3
[4] => 5
[5] => 5
[6] => 3
)
Одноместный номер: 4
Нажмите меня, чтобы увидеть образец решения
11. Напишите программу PHP, чтобы найти один элемент, который появляется один раз в массиве, где каждый элемент появляется дважды, кроме одного. Перейти к редактору
Вход: массив (5, 3, 0, 3, 0, 5, 7, 7, 9)
Выход: 9
Нажмите меня, чтобы увидеть образец решения
12. Напишите программу на PHP, чтобы несколько раз добавлять цифры положительного целого числа, пока результат не будет иметь одну цифру. Перейти к редактору
Например, данное число равно 59, результат будет 5.
Вход: 48
Выход: 3
Шаг 1: 5 + 9 = 14
Шаг 1: 1 + 4 = 5
Нажмите меня, чтобы увидеть образец решения
13. Напишите программу PHP, чтобы обратить цифры целого числа. Перейти к редактору
Образец :
х = 234, возврат 432
х = -234, возврат -432
Нажмите меня, чтобы увидеть образец решения
14. Напишите программу PHP, чтобы обратить биты целого числа (32 бита без знака). Перейти к редактору
Вход: 1234
Выход: 1260388352
Например, 1234 представлен в двоичном виде как 10011010010 и возвращает 1260388352, который представлен в двоичном виде как 1001011001000000000000000000000.
Нажмите меня, чтобы увидеть образец решения
15. Напишите программу PHP, чтобы проверить последовательность чисел - это арифметическая прогрессия или нет. Перейти к редактору
В математике арифметическая прогрессия или арифметическая последовательность - это последовательность чисел, такая, что разница между последовательными членами постоянна.
Вход: массив (5, 7, 9, 11)
Выход: арифметическая последовательность
Например, последовательность 5, 7, 9, 11, 13, 15 ... является арифметической прогрессией с общей разницей 2.
Нажмите меня, чтобы увидеть образец решения
16. Напишите программу PHP, чтобы проверить последовательность чисел - это геометрическая прогрессия или нет. Перейти к редактору
Вход: массив (2, 6, 18, 54)
Выход: геометрическая последовательность
В математике геометрическая прогрессия или геометрическая последовательность - это последовательность чисел, в которой каждый член после первого находится путем умножения предыдущего на фиксированное ненулевое число, называемое общим отношением. Например, последовательность 2, 6, 18, 54, ... является геометрической прогрессией с общим отношением 3. Аналогично, 10, 5, 2.5, 1.25, ... является геометрической последовательностью с общим отношением 1/2.
Нажмите меня, чтобы увидеть образец решения
17. Напишите программу PHP, чтобы вычислить сумму двух перевернутых чисел и отобразить сумму в перевернутом виде. Перейти к редактору
Вход: 13, 14
Выход: 72
Примечание: результат не будет уникальным для каждого числа, например, 31 является обратной формой нескольких чисел 13, 130, 1300 и т. Д. Поэтому все ведущие нули будут опущены.
Нажмите меня, чтобы увидеть образец решения
18. Напишите программу PHP, где вы берете любое положительное целое число n, если n четное, разделите его на 2, чтобы получить n / 2. Если n нечетное, умножьте его на 3 и добавьте 1, чтобы получить 3n + 1. Повторите процесс пока не дойдете до 1. Идите в редактор
Вход: 12
Выход: массив
(
[0] => 12
[1] => 6
[2] => 3
[3] => 10
[4] => 5
[5] => 16
[6] => 8
[7] => 4
[8] => 2
[9] => 1
)
Согласно Википедии, гипотеза Коллатца является гипотезой в математике имени Лотара Коллатца, который впервые предложил ее в 1937 году. Эта гипотеза также известна как гипотеза 3n + 1.
Гипотеза может быть обобщена следующим образом. Возьмите любое положительное целое число n. Если n четное, разделите его на 2, чтобы получить n / 2. Если n нечетное, умножьте его на 3 и добавьте 1, чтобы получить 3n + 1. Повторите процесс (который был назван «Половина или тройной плюс один») бесконечно , Предположение состоит в том, что независимо от того, с какого числа вы начинаете, вы всегда в конечном итоге достигнете 1.
Пример :
Например, начиная с n = 12, получается последовательность 12, 6, 3, 10, 5, 16, 8, 4, 2, 1.
Например, n = 19 занимает больше времени, чтобы достичь 1: 19, 58, 29, 88, 44, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4. , 2, 1.
Нажмите меня, чтобы увидеть образец решения
19. Напишите программу PHP, чтобы проверить, является ли данное число уродливым числом. Перейти к редактору
Вход: 12
Вывод: 12 - уродливое число
Уродливые числа - это положительные числа, чьи единственные простые множители - 2, 3 или 5. Последовательность 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, ...
показывает первые 10 уродливых чисел.
Примечание: 1 обычно рассматривается как некрасивое число.
Нажмите меня, чтобы увидеть образец решения
20. Напишите программу PHP, чтобы получить числа Хемминга до заданных чисел, а также проверить, является ли данное число числом Хемминга. Перейти к редактору
Вход: 1
Выход: число Хэмминга
В математике арифметическая прогрессия или арифметическая последовательность - это последовательность чисел, такая, что разница между последовательными членами постоянна.
Например, последовательность 5, 7, 9, 11, 13, 15 ... является арифметической прогрессией с общей разницей 2.
Нажмите меня, чтобы увидеть образец решения
21. Напишите программу PHP, чтобы проверить, является ли данная строка анаграммой другой данной строки. Перейти к редактору
Вход: («анаграмма», «нагарам»)
Вывод: эти две строки анаграммы
Согласно Википедии, анаграмма - это прямое переключение слов или игра слов, результат перестановки букв слова или фразы для получения нового слова или фразы, используя все оригинальные буквы ровно один раз; например, слово анаграмма может быть преобразовано в nag-a-ram.
Нажмите меня, чтобы увидеть образец решения
22. Напишите PHP-программу, которая помещает все нули в конец массива. Перейти к редактору
Вход: массив (0,2,3,4,6,7,10)
Выход: массив
(
[0] => 2
[1] => 3
[2] => 4
[3] => 6
[4] => 7
[5] => 10
[6] => 0
)
Нажмите меня, чтобы увидеть образец решения
23. Напишите программу PHP, чтобы найти элемент большинства в массиве. Перейти к редактору
Вход: массив (1, 2, 3, 4, 5, 5, 5, 5, 5, 5, 6)
Выход: 5
Примечание. Элемент контрольного значения - это элемент, который появляется более чем в n / 2 раза, где n - это количество элементов в массиве.
Нажмите меня, чтобы увидеть образец решения
24. Напишите программу PHP, чтобы найти длину последнего слова в строке. Перейти к редактору
Вход: PHP упражнения
Выход: 9
Нажмите меня, чтобы увидеть образец решения
25. Напишите программу PHP, чтобы найти единственное число, которое встречается нечетное количество раз, а другие числа встречаются четное количество раз. Перейти к редактору
Ввод: 4, 5, 4, 5, 2, 2, 3, 3, 2, 4, 4
Выход: 2
Нажмите меня, чтобы увидеть образец решения
Редактор кода PHP:
Еще не все !
Не отправляйте решение вышеупомянутых упражнений здесь, если вы хотите внести вклад, перейдите на соответствующую страницу упражнения.
Новый контент: Composer: менеджер зависимостей для PHP , R программирования