Что означает процент в программировании
Перейти к содержимому

Что означает процент в программировании

  • автор:

Процент

Символ процента в словаре компьютерной терминологии.

Символ процента (%) чаще всего применяется в математике и программировании. Этот символ находится на одной клавише с цифрой 5 на всех QWERTY клавиатурах, чтобы ввести символ процента нужно удерживать клавишу Shift и нажать клавишу с цифрой 5.

Символ процента используется в разных языках программирования, например, Basic, C, Perl, SQL и других. Ниже приведен пример использования символа процента в языке SQL.

SELECT full_name FROM names WHERE full_name LIKE ‘B%’

Выше приведенный пример выберет все фамилии, начинающиеся на букву «B», так как знак процента в команде LIKE заменяет любое количество символов.

Понравилось? Поделись с друзьями!

Новое
  • Подключение компьютера к телевизору через HDMI
  • 5 причин перегрева компьютера
  • Вылетают игры на компьютере: причины
  • Не открываются страницы в браузерах в Windows 10
  • Что делать, если программы из магазина в Windows 10 не подключаются к интернету

Вычисляем проценты и
остаток от деления нацело

Во многих приложениях есть скидки — столько-то процентов на тот или иной товар. Поэтому программисты должны уметь запрограммировать взятие процента — просто умножить на число процентов и поделить на 100. Но не стоит путать оператор % и взятие процента. Исторически сложилось, что символ % обозначает в Java остаток от деления нацело.

Когда вам нужно посчитать процент от заданного числа, то нужно умножить это число на количество процентов и поделить на 100. Аналогичный способ – умножить число на ноль запятая количество процентов. Проценты часто используются, чтобы рассчитать значения цены со скидкой или когда вам известна пропорция — сколько A составляет от B в процентах.

Пример. Обычная цена товара составляет 4000 руб, но сейчас действует скидка 15 процентов. Выведите на экран сумму со скидкой:

 // не забываем о коварстве деления нацело и пишем 15.0, // а не просто 15 - см. предыдущую тему System.out.println (4000*15.0/100); // это будет 15% от исходной величины - 600 рублей System.out.println (4000*0.15); // это то же самое // Теперь сама новая цена - это старая минус сумма скидки: System.out.println (4000 - 4000*0.15); // Аналогично мы можем писать и с помощью переменных double price = 4000; // исходная цена - могла быть прочитана из файла или базы данных double discount_percent = 15; // величина скидки в процентах double discount_value = price * discount_percent / 100; // величина скидки в рублях double new_price = price - discount_value; // новая цена за вычетом скидки 

Не стоит путать оператор % и взятие процента. Исторически сложилось, что символ % обозначает в Java вычисление остатка от деления нацело.

Посмотрим в коде:

 /* Посчитаем остаток от деления 100 на 10. Делится нацело, поэтому остаток – ноль*/ int s = 100%10; // 100 не делится нацело на 11 – в остатке остаётся 1 s = 101%10; // s равно 1 s = 102%10 // s равно 2 s = 119%10 // s равно 9 s = 120%10 // s равно 0, деление нацело, то есть остатка нет 

В программировании часто используется остаток от деления, чтобы описать циклически меняющуюся величину. Дело в том, что если исходная величина все время возрастает, то остаток от деления на постоянную величину будет расти, но затем пойдет снова с нуля. Посмотрим в коде, заодно вспомним оператор инкремента ++ (увеличить переменную на 1):

 int a = 3; System.out.println ( a % 3); // распечатать остаток от деления a на 3. Сейчас он равен нулю. a ++; // означает "увеличить a на 1, эквивалентно a += 1 . Теперь a стало равно 4 System.out.println ( a % 3); // распечатать остаток от деления a на 3. Сейчас это 1. a ++; // а равно 5 System.out.println ( a % 3); // остаток 2 a ++; // а равно 6 System.out.println ( a % 3); // остаток 0 a ++; // а равно 7 System.out.println ( a % 3); // остаток 1 // Как видно, выражение a%3 все время пробегает повторяющийся набор значений: // 0, 1, 2, 0, 1, 2, 0, 1, 2 и так далее. 

Как видите, мы все время повторяли команды a++ и распечатка a%3. Чтобы не писать один и тот же код много раз применяют циклы, они позволяют запускать кусок кода много раз подряд. Но о циклах в следующих разделах, а пока мы поняли, что % — остаток от деления одного числа на другое бывает полезен, чтобы сформировать последовательность чисел от нуля до заданного числа, повторяющуюся подряд нужное число раз. Такие последовательности бывают нужны в самых разных задачах, например, когда вы хотите задать координаты персонажам в игре и расставить их по экрану — каждый следующий правее, и так до конца экрана, а потом снова слева направо уже по следующей строчке.

Самое главное мы уже освоили. Теперь время решать задачи. Ответьте на несколько вопросов, чтобы лучше усвоился новый материал:

Знак процента

% — знак, чаще всего обозначающий проценты.

Происхождение обозначения

аббревиатура лат. per cento , XV в.

от per cento осталось только o , XVII в.

Само слово «процент» происходит от лат. «pro centum» , что означает в переводе «на сто (сотню)». В 1685 году в Париже была издана книга «Руководство по коммерческой арифметике» Матье де ла Порта. В одном месте речь шла о процентах, которые тогда обозначали «cto» (сокращённо от cento). Однако наборщик принял это «cto» за дробь и напечатал «%» [источник не указан 525 дней] . Так из-за опечатки этот знак вошёл в обиход.

Правила набора

В тексте знак процента используется только при числах в цифровой форме, от которых при наборе отделяется неразрывным пробелом («доход 67 %»). Это правило набора введено в действие в 1982 году нормативным документом ГОСТ 8.417—81 (впоследствии заменённым на ГОСТ 8.417—2002); ранее нормой было не отделять знак процента пробелом от предшествующей цифры.

Исключение составляют случаи [источник не указан 263 дня] , когда знак процента используется для сокращённой записи сложных слов, образованных при помощи числительного и прилагательного «процентный». Например: «20%-я сметана» (означает «двадцатипроцентная сметана»), «10%-й раствор», «20%-му раствору»; но «жирность сметаны составляет 20 %», «раствор концентрацией 10 %» и т. п.

В настоящее время правило отбивки знака процента не является общепризнанным. До сих пор многие российские издательства не следуют рекомендациям ГОСТ 8.417—2002 и по-прежнему придерживаются традиционных правил набора, то есть при наборе знак процента от предшествующего числа не отделяется.

Использование в информатике

  • В Бейсике знак процента, поставленный сразу после имени переменной, означает тип данных «целое».
  • В языке Си знак процента обозначает операцию вычисления остатка от деления (8 % 3 == 2); также совместно с символами «d», «s» и некоторыми другими используется в строках задания формата ввода/вывода данных в соответствующих функциях.
  • В Perl знак процента, предшествующий имени переменной, означает тип данных «хэш».
  • В командах DOS и пакетных файлах используется как первый символ объявления подстановочной переменной для команды FOR; для пакетных файлов нужно указывать удвоенный символ процента — %%.
  • В системе Windows для доступа к переменным в консоли и bat файлах используется имя переменной заключённое между знаками процента, например, %username% покажет имя учётной записи, которой принадлежит запущенный процесс.
  • Применяется для замены символов, не входящих в ASCII, в строках URI в виде кодов типа %D0%9F%D1%80%D0%BE (первым стоит знак процента, потом двузначное шестнадцатеричное число).
  • В SQL знак процента при команде LIKE заменяет любое количество любых символов, то есть обеспечивает поиск по маске.
  • В Matlab-программах, LaTeX-разметке и PostScript знак процента употребляется перед началом строчного текстового комментария.
  • В калькуляторах имеется кнопка с изображением процента. В зависимости от фирмы изготовителя простейшие калькуляторы вычисляют:
    — процент от числа;
    — процентное отношение одного числа от другого;
    — процентную надбавку (mark-up);
    — процентное изменение.
Математические знаки
Плюс ( + ) • Минус ( ) • Знак умножения ( · или × ) • Знак деления ( : или / ) • Знак корня ( ) • Знак равенства ( =, , и др.) • Знаки неравенства ( , >, и др.) • Бесконечность ( ) • Знак интеграла ( ) • Факториал ( ! ) • Вертикальная черта ( | ) • Знак градуса ( ° ) • Минута градуса ( ) • Секунда градуса ( ) • Штрих ( ) • Звёздочка ( * ) • Обратная косая черта, бэкслеш ( \ ) • Процент ( % ) • Промилле ( ) • Тильда ( ~ ) • Циркумфлекс ( ^ ) • Плюс-минус ( ± ) • Обелюс ( ÷ ) • Десятичный разделитель ( , или . )
Математика • История математических обозначений
  • Математические знаки
  • Клавиатура
  • Типографские знаки

Освой C# самостоятельно

C# поддерживает основные арифметические операторы: сложение, вычитание, умножение, деление.

Сложение и вычитание

Складывать и вычитать очень просто

C = A + T; C = A - T;

Умножение

В отличии от знаков сложения (+) и вычитания (-) клавиши со знаком умножения на клавиатуре нет. Практически во всех языках программирования для знака умножения используется звездочка (*).

C = A * T;

Деление

Знака деления на клавиатуре также нет. Знак двоеточия (:) использовать нельзя. Было принято решение использовать для деления слэш (/)

C = A / T;

На делении стоит остановиться и рассмотреть его особенности подробнее. Давай напишем такую программу (отрывок):

int Cats, Mice, Part; Cats = 4; Mice = 9; Part = Mice / Cats; System.Console.WriteLine(Part);

Запустив программу, вы увидите, что результат будет отличаться от результата деления по старинке на бумажке. Так как переменные у нас целого типа, то и получаемый результат тоже должен быть целым числом. В нашем случае результат усекается, т.е. дробная часть просто отбрасывается. Усечение работает по принципу округления в сторону нуля и результатом целочисленного деления будет ближайшее к нулю целое число.

Если вас интересует остаток от деления, то нужно использовать оператор деления по модулю. Этот оператор обозначают знаком процента (%). Как видите в этом знаке содержится знак слэша, что указывает на связь с делением. Переделаем предыдущий пример:

int Cats, Mice, Part; Cats = 4; Mice = 9; Part = Mice % Cats; System.Console.WriteLine(Part);

При использовании отрицательных чисел, результат всегда имеет тот же знак, что и делимое. Деление по модулю очень удобно использовать для разбивки числа на части. Предположим вам надо получить последние две цифры 2011 года. Вот как можно это сделать:

iYear = 2011; TwoDigit = iYear % 100;

Вот и другой пример. Предположим, у вас есть фильм, продолжительность которого равна 135 минутам. Чтобы разбить это число на часы и минуты, нужно применить такой код:

int FilmTime = 135; int Hours = FilmTime / 60; int Minutes = FilmTime % 60;

Обратите внимание, что переменная Minutes всегда будет содержать числа в диапазоне от 0 до 59.

Напоследок, остается сказать, что делить на 0 нельзя. У вас будет выводиться сообщение об ошибке либо на этапе компиляции, либо во время работы программы.

Приоритеты

Если используются несколько операторов в одном выражении, то вступают в силу правила приоритетов. Операторы умножения и деления имеют более высокий авторитет, чем операторы сложения и вычитания. Скобки позволяют переопределить приоритеты.

Сокращения

Очень часто приходится к существующей переменной прибавлять новое значение:

int Kitten = 4; Kitten = Kitten + 5;

Чтобы дважды не набирать одну и ту же переменную, можно применить сокращенную запись:

Kitten += 5;

Не забывайте, что знак плюса всегда стоит перед знаком равенства. Аналогично используются и другие операторы:

Kitten /= 2; Kitten *= 3; Kitten %= 6;

Если вам надо к переменной прибавить или вычесть единицу, то вместо:

Kitten = Kitten + 1;

можно использовать знакомую сокращенную запись:

Kitten += 1;

а можно и более удобную запись (инкрементирование)

Kitten++;

Аналогично, можно уменьшать переменную на единицу (оператор декремента):

Kitten--;

Приведенные знаки икремента и декремента можно использовать как после переменной, так и перед ней:

++ Kitten;

В простых выражениях это не составляет проблемы. Но в сложных выражениях надо учитывать некоторые особенности. Например, возьмем выражение:

C = 3; A = C++;

В этом случае, переменной будет присвоено значение переменной С (т.е. 3), а переменная C будет равна 4. Поменяем теперь порядок

C = 3; A = ++C;

Здесь сначала переменная C увеличится на единицу, а затем новое значение будет присвоено и переменной A.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *