Символ процента (%) — один из наиболее часто используемых операторов в программировании. Его функциональность варьируется в зависимости от языка, но основные сферы применения остаются схожими. Рассмотрим ключевые аспекты его использования.
Оператор % выполняет деление по модулю, возвращая остаток от деления двух чисел. Это фундаментальная операция в алгоритмах, связанных с циклами, проверками чётности и хешированием.
Наиболее распространённое применение — вычисление остатка:
Это используется для:
В языках типа Python и C символ % применяется для подстановки значений в строки:
Пример в Python: "Имя: %s, Возраст: %d" % ("Анна", 25)
В современных версиях Python этот способ постепенно заменяется методом .format() и f-строками, но legacy-код часто содержит подобные конструкции.
В некоторых языках (например, Verilog) % обозначает операции с битовыми полями. Также используется в алгоритмах сдвига и масках.
Рассмотрим реализацию FizzBuzz — классической задачи на использование оператора %:
for i in range(1, 101):
output = ""
if i % 3 == 0: output += "Fizz"
if i % 5 == 0: output += "Buzz"
print(output if output else i)
Другие применения:
Операция деления по модулю обычно требует больше тактов процессора, чем сложение или умножение. В высокопроизводительном коде её часто заменяют битовыми операциями, когда это возможно (например, для степеней двойки: n % 256 == n & 0xFF).