Что значит округлить кратному 10

Округлить указанное число до ближайшего кратного 10 | Set-2

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

Примеры:

Input: str = “99999999999999993”
Output: 99999999999999990

Input: str = “99999999999999996”
Output: 100000000000000000

Подход: решение этой же проблемы обсуждалось в этой статье, которая не будет работать для больших чисел. Когда число большое и представлено в виде строк, мы можем обработать число цифра за цифрой. Основное наблюдение состоит в том, что если последняя цифра числа ≤ 5, то будет затронута только последняя цифра, т.е. она будет заменена на 0 . Если это число больше 5, то число должно быть округлено до некоторого следующего более высокого кратного 10, т.е. последняя цифра будет заменена на 0, а 1 будет добавлено к остальной части числа, то есть к числу, представленному подстрока str [0… n-1], которая может быть выполнена путем сохранения переноса, сгенерированного на каждом шаге (цифра).

Ниже приведена реализация вышеуказанного подхода:

// C ++ реализация подхода
#include

using namespace std;

// Функция для округления заданного числа
// с точностью до кратного 10

void roundToNearest(string str, int n)

// Если строка пуста

// Если последняя цифра меньше или равна 5

// тогда его можно округлить до ближайшего

// (предыдущий) кратный 10, просто заменив

// последняя цифра с 0

// Устанавливаем последнюю цифру в 0

// Распечатать обновленный номер

// Число должно быть округлено до

// следующий кратный 10

// Для хранения переноски

// Заменить последнюю цифру на 0

// Начиная со второй последней цифры, добавляем 1

// до цифр, пока есть перенос

// Пока есть цифры для рассмотрения

// и есть возможность добавить

while (i >= 0 && carry == 1) <

// Получить текущую цифру

int currentDigit = str[i] — ‘0’ ;

// Если цифра превышает 9, то

// будет сгенерирован перенос

if (currentDigit > 9) <

// иначе не будет переноса

// Обновляем текущую цифру

str[i] = ( char )(currentDigit + ‘0’ );

// Получить предыдущую цифру

// Если перенос по-прежнему равен 1, то он должен быть

// вставляем в начало строки

// Распечатать остаток номера

string str = «99999999999999993» ;

int n = str.length();

// Java реализация подхода

// Функция для округления заданного числа
// с точностью до кратного 10

static void roundToNearest(StringBuilder str, int n)

// Если строка пуста

// Если последняя цифра меньше или равна 5

// тогда его можно округлить до ближайшего

// (предыдущий) кратный 10, просто заменив

// последняя цифра с 0

if (str.charAt(n — 1 ) — ‘0’ 5 )

// Устанавливаем последнюю цифру в 0

str.setCharAt(n — 1 , ‘0’ );

// Распечатать обновленный номер

System.out.print(str.substring( 0 , n));

// Число должно быть округлено до

// следующий кратный 10

// Для хранения переноски

// Заменить последнюю цифру на 0

str.setCharAt(n — 1 , ‘0’ );

// Начиная со второй последней цифры,

// добавляем 1 к цифрам, пока есть перенос

// Пока есть цифры для рассмотрения

// и есть возможность добавить

while (i >= 0 && carry == 1 )

// Получить текущую цифру

int currentDigit = str.charAt(i) — ‘0’ ;

// Если цифра превышает 9, то

// будет сгенерирован перенос

if (currentDigit > 9 )

// иначе не будет переноса

// Обновляем текущую цифру

str.setCharAt(i, ( char )(currentDigit + ‘0’ ));

// Получить предыдущую цифру

// Если перенос по-прежнему равен 1, то он должен быть

// вставляем в начало строки

// Распечатать остаток номера

System.out.print(str.substring( 0 , n));

public static void main(String[] args)

StringBuilder str = new StringBuilder( «99999999999999993» );

int n = str.length();

// Этот код предоставлен
// sanjeev2552

# Python 3 реализация подхода

# Функция для округления заданного числа
# до ближайшего кратного 10

def roundToNearest( str , n):

# Если строка пуста

# Если последняя цифра меньше или равна 5

# тогда оно может быть округлено до ближайшего

# (предыдущий) кратный 10, просто заменив

# последняя цифра с 0

if ( ord ( str [n — 1 ]) — ord ( ‘0’ ) = 5 ):

# Установите последнюю цифру в 0

# Распечатать обновленный номер

print ( str [ 0 :n])

# Число должно быть округлено до

# следующий кратный 10

# Для хранения керри

# Заменить последнюю цифру на 0

# Начиная со второй последней цифры,

# добавьте 1 к цифрам, пока есть перенос

# Пока есть цифры для рассмотрения

# и есть кэрри, чтобы добавить

while (i > = 0 and carry = = 1 ):

# Получить текущую цифру

currentDigit = ord ( str [i]) — ord ( ‘0’ )

# Если цифра превышает 9, то

# будет сгенерирован перенос

if (currentDigit > 9 ):

# Иначе не будет никакого переноса

# Обновить текущую цифру

str [i] = chr (currentDigit + ‘0’ )

# Перейти к предыдущей цифре

# Если перенос по-прежнему равен 1, то он должен быть

# вставляется в начало строки

# Распечатать оставшуюся часть номера

print ( str [ 0 :n])

if __name__ = = ‘__main__’ :

roundToNearest( str , n)

# Этот код предоставлен
# Surendra_Gangwar

// C # реализация подхода

// Функция для округления заданного числа
// с точностью до кратного 10

static void roundToNearest(StringBuilder str, int n)

// Если строка пуста

// Если последняя цифра меньше или равна 5

// тогда его можно округлить до ближайшего

// (предыдущий) кратный 10, просто заменив

// последняя цифра с 0

// Устанавливаем последнюю цифру в 0

// Распечатать обновленный номер

// Число должно быть округлено до

// следующий кратный 10

// Для хранения переноски

// Заменить последнюю цифру на 0

// Начиная со второй последней цифры,

// добавляем 1 к цифрам, пока есть перенос

// Пока есть цифры для рассмотрения

// и есть возможность добавить

while (i >= 0 && carry == 1)

// Получить текущую цифру

int currentDigit = str[i] — ‘0’ ;

// Если цифра превышает 9, то

// будет сгенерирован перенос

if (currentDigit > 9)

// иначе не будет переноса

// Обновляем текущую цифру

str[i] = ( char )(currentDigit + ‘0’ );

// Получить предыдущую цифру

// Если перенос по-прежнему равен 1, то он должен быть

// вставляем в начало строки

// Распечатать остаток номера

public static void Main(String[] args)

StringBuilder str = new StringBuilder( «99999999999999993» );

int n = str.Length;

// Этот код предоставлен
// Rajnis09

Источник

Округленные числа

Онлайн калькулятор для округления чисел, до целого, разряда, десятков, сотен, тысяч. Округлить дробное число.

Самое первое, что следует знать — округлить можно любое число. Независимо от того, какое число округляется целое или дробь, правило действует одно.

Если нужно округлить число, это означает, что сократится его значение до сотых, десятков или тысячных, остальные значения откидываются.

При округлении, число которое отбрасывается и будет играть главную роль. Если это чисто от 0 до 5, то округляемое число остается без изменения. Когда число от 5 до 9, округляемое число увеличивается на 1.

Пример:
Нужно округлить число 35,948 до сотых.
Это означает, что цифра 8 будет откинута. При этом предыдущая цифра, а это 4 в данном случае будет увеличена на 1.
Имеем: 35,948 = 35,95

Пример:
Нужно округлить число 0,738 до десятых.
Значит, что нужно откинуть две последние цифры – 38, обращаем внимание на следующую после той, которая остается – это 3. В данном случае оно меньше 5, поэтому изменения не проводятся.
Если цифра, которая отбрасывается равна 5, то к оставшейся добавляется 1.
Когда нужно округлить, например число 0,795 до сотых, отбрасывается 5, значит к предыдущей цифре добавляется 1. Так как у нас это 9, получится 10, соответственно 7 превратится в 8: 0,795 = 0,80.

Источник

Excel. Формулы. Округление до кратного

При работе с числовыми данными операции округления совсем не редки. Чаще всего мы подразумеваем под ними округление до некоторого числа разрядов (обычно — после запятой). Сюда же можно отнести и округление до десятков, сотен, тысяч и т.д.

Однако, иногда возникает необходимость округлить число с нужной точностью, то есть до ближайшего числа, кратного заданному. Например, 19 округлить с точностью до 5 (результат — 20, ближайшее к 19 число, которое кратно 5).

Для подобного рода округлений в Excel есть встроенная математическая функция ОКРУГЛТ(). Она принимает 2 аргумента:

  • округляемое число (в примере выше — 19);
  • точность округления (в примере выше — 5).

Данная функция производит округление с избытком, то есть делит исходное число на указанную точность, и если остаток от деления больше или равен половине точности, то возвращается первое число, которое больше исходного и кратно заданному. Иначе возвращается первое число, которое меньше исходного и кратно заданному. Пример вычисления — на рисунке ниже.

В качестве точности можно указывать и положительные, и отрицательные числа, и десятичные дроби. Единственное правило — знак исходного числа и числа, указывающего точность, должен быть одинаковым , иначе функция вернет ошибку #!ЧИСЛО.

Несколько примеров вычисления:

Если Вам нужно округлять число с кратностью 10, 100, 1000 и т.д., то можно использовать для этого другую функцию — ОКРУГЛ(). В качестве второго аргумента нужно указать отрицательное число, указывающее на количество разрядов, до которых нужно округлить. Так, чтобы округлить число 156 до десятков, нужно ввести формулу =ОКРУГЛ(156;-1) , а чтобы округлить число 123456 до 1000, ввести =ОКРУГЛ(123456;-3) .

Иногда нужно получить на выходе число, оканчивающееся, например, на 99 (как на ценниках в магазинах). В таком случае следует округлить заданное число кратно 100, а затем вычесть единицу. Формула будет выглядеть так: =ОКРУГЛТ(15678;100)-1 или =ОКРУГЛ(15678;-2)-1, а результат будет равен 15699.

Видеоверсию данной статьи смотрите на нашем канале на YouTube

Чтобы не пропустить новые уроки и постоянно повышать свое мастерство владения Excel — подписывайтесь на наш канал в Telegram Excel Everyday

Куча интересного по другим офисным приложениям от Microsoft (Word, Outlook, Power Point, Visio и т.д.) — на нашем канале в Telegram Office Killer

Вопросы по Excel можно задать нашему боту обратной связи в Telegram @ExEvFeedbackBot

Вопросы по другому ПО (кроме Excel) задавайте второму боту — @KillOfBot

Источник

Функция ОКРУГЛ

Описание

Функция ОКРУГЛ округляет число до указанного количества дробных разрядов. Например, если в ячейке A1 находится число 23,7825, и его необходимо округлить до двух дробных разрядов, можно использовать следующую формулу:

В результате получается число 23,78.

Синтаксис

Аргументы функции ОКРУГЛ описаны ниже.

Число Обязательный аргумент. Округляемое числовое значение.

Число_разрядов Обязательный аргумент. Количество дробных разрядов, до которого требуется округлить число.

Примечания

Если число_разрядов больше 0, то число округляется до указанного количества дробных разрядов.

Если число_разрядов равно 0, то число округляется до ближайшего целого.

Если число_разрядов меньше 0, то число округляется слева от запятой.

Чтобы округление всегда выполнялось в большую по модулю сторону, используйте функцию ОКРУГЛВВЕРХ.

Чтобы округление всегда выполнялось до ближайшего меньшего по модулю, используйте функцию ОКРУГЛВНИЗ.

Чтобы число округлялось с нужной кратностью (например, до ближайшего числа, кратного 0,5), используйте функцию ОКРУГЛТ.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Округляет число 2,15 до одного дробного разряда

Округляет число 2,149 до одного дробного разряда

Округляет число -1,475 до двух дробных разрядов

Округляет число 21,5 до одного дробного разряда слева от запятой

Округляет число 626,3 до ближайшего числа, кратного 1000

Округляет число 1,98 до ближайшего числа, кратного 10

Округляет число -50,55 до ближайшего числа, кратного 100

Источник

Округление чисел до целых, десятых, сотых, тысячных

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

В результате округления получается приближенное число.

Для обозначения округления используют знак приблизительно равно ≈

Округление чисел онлайн калькулятор

Калькулятор округляет число до заданного количество значащих цифр после запятой. Введите округляемое число и нужно количество значащих цифр. В результате вы получите округленное число и все возможные варианты округления:

  • до миллионов;
  • до сотен тысяч;
  • до десятков тысяч;
  • до тысяч;
  • до сотен;
  • до единиц;
  • до десятых;
  • до сотых;
  • до тысячных;
  • до десятитысячных;
  • до стотысячных;
  • до миллионных.

Просто выберите нужный вариант округления.

Правила округления

Первое правило

Если первая из отделяемых цифр больше или равна 5, то последняя оставляемая цифра усиливается (увеличивается на единицу).

Пример: округлим до десятых число 123,456. В разряде десятых находится цифра 4, а следом за ним цифра 5. По первому правилу округления мы должны усилить разряд десятых, то есть увеличить его на единицу. Таким образом в результате округления до десятых получим 123,456 ≈ 123,5.

Второе правило

Если первая из отделяемых цифр меньше или равна 4, то последняя оставляемая цифра записывается без изменений.

Пример: округлим до сотых число 123,4523. В разряде сотых находится цифра 5, а следом за ним цифра 2. По второму правилу округления оставляем цифру в разряде сотых без изменения. Таким образом в результате округления до сотых получим 123,4523 ≈ 123,45.

Пример: округлим число π Пи (3,14) до десятых. После числа 1, которое стоит в разряде десятых идет число 4. Соответственно, по правилам округления записываем десятые без изменения. Получаем: 3,14 ≈ 3,1.

Третье правило

Если отбрасывается цифра 5, а за ней нет значащих цифр, то округление производится к ближайшему четному числу. При этом последняя сохраняемая цифра оставляется неизменной, если она четная, и усиливается, если она нечетная. Такое округление называют банковским или бухгалтерским округлением. Оно отличается от математического округления.

Пример: округлим до целых число 2,5 используя математическое округление. В разряде десятых у нас находится цифра 5, значит по первому правилу округления мы усиливаем разряд единиц и получаем 2,5 ≈ 3.

Если же необходимо округлить по правилам банковского округления, то так как после 5 у нас нет значащих цифр, а 2 — число четное, то оставляем разряд единиц без изменения и получаем, что 2,5 ≈ 2. Вот такой парадокс. Имейте это ввиду при округлении чисел.

Источник

Читайте также:  Что значит нормализировать моя молоко
Оцените статью