cyanic-selkie/wikianc huggingface dataset:
Rounding
Rounding is often done on purpose to obtain a value that is easier to write and handle than the original. It may also be done to indicate the accuracy of a computed number; for example, a quantity that was computed as 123,456, but is known to be accurate only to within a few hundred units, is better stated as "about 123,500".
Accurate rounding of transcendental mathematical functions is difficult, because the number of extra digits that need to be calculated to resolve whether to round up or down cannot be known in advance. This problem is known as "the table-maker's dilemma" (below).
Rounding has many similarities to the quantization that occurs when physical quantities must be encoded by numbers or digital signals.
Types of rounding
Typical rounding problems can include:
Rounding to a specified increment
The most common type of rounding is to round to an integer; or, more generally, to an integer multiple of some increment—such as rounding to whole tenths of seconds, hundredths of a dollar, to whole multiples of 1/2 or 1/8 inch, to whole dozens or thousands, etc..
In general, rounding a number x to a multiple of some specified increment m entails the following steps:
For example, rounding x = 2.1784 dollars to whole cents (that is, to a multiple of 0.01) entails computing y = x/m = 2.1784/0.01 = 217.84, then rounding y to the integer q = 218, and finally computing z = q×m = 218×0.01 = 2.18.
Hugh the Great
Hugh the Great or Hugues le Grand (895–16 June 956) was duke of the Franks and count of Paris.
Early career
Hugh was the son of King Robert I of France and Béatrice of Vermandois. She was the daughter of Herbert I, Count of Vermandois. Hugh was born in 895 in Paris, France. His eldest son was Hugh Capet who became King of France in 987. Hugh was a member of the family known as the Robertians.
Rounding
Rounding to a specified increment
When rounding to a predetermined number of significant digits, the increment m depends on the magnitude of the number to be rounded (or of the rounded result).
Hugh the Great
Duke of France
In 922 the barons of western Francia revolted against the Carolingian king Charles the Simple. In his place they elected Robert I, Hugh's father, as King of Western Francia. Robert I died in battle at Soissons in 923. When Hugh refused the crown it went to his brother-in-law, Rudolph of France. Charles the simple asked his cousin Herbert II, Count of Vermandois for help in getting back his crown. But instead of helping the king he put him in prison. Herbert then used the threat of releasing his prisoner to get what he wanted. But Charles died in 929. From then on Hugh the great, acting for King Rudolph, had to struggle with Herbert II. Finally Rudolph and Herbert II came to an agreement in 935.
Rounding
Rounding to a specified increment
The increment m is normally a finite fraction in whatever numeral system that is used to represent the numbers. For display to humans, that usually means the decimal numeral system (that is, m is an integer times a power of 10, like 1/1000 or 25/100). For intermediate values stored in digital computers, it often means the binary numeral system (m is an integer times a power of 2).
Hugh the Great
Duke of France
At the death of King Rudolph in 936, Hugh possessed nearly all of the region between the Loire and the Seine. This was the same territory as Neustria with the exceptions of Anjou and of Normandy. Hugh was one of those who brought Louis IV (d'Outremer) from the Kingdom of England in 936. In 937 Hugh married Hedwige of Saxony, a daughter of Henry I the Fowler of Germany and Matilda of Ringelheim. Very soon however Hugh was quarrelling with King Louis.
Rounding
Rounding to a specified increment
The abstract single-argument "round" function that returns an integer from an arbitrary real value has at least a dozen distinct concrete definitions presented in the rounding to integer section. The abstract two-argument "round" function is formally defined here, but in many cases it is used with the implicit value m = 1 for the increment and then reduces to the equivalent abstract single-argument function, with also the same dozen distinct concrete definitions.
Hugh the Great
Duke of France
In 939 king Louis attacked Hugh the Great and William I, Duke of Normandy. But soon after they made a truce which lasted until June. That same year Hugh, along with Herbert II of Vermandois, Arnulf I, Count of Flanders and Duke William Longsword paid homage to the Emperor Otto the Great. They supported him in his struggle against Louis. When Louis fell into the hands of the Normans in 945, he was handed over to Hugh in exchange for their young duke Richard. Hugh released Louis IV in 946 but made him surrender the fortress of Laon. In 948 at a church council at Ingelheim the bishops excommunicated Hugh even though he was not there. Hugh's response was to attack Soissons and Reims. Hugh finally changed his mind and made peace with Louis IV, and the church.
When Louis IV died Hugh was one of the first to recognize Lothair as his successor. For helping to have him crowned the new king gave Hugh Burgundy and Aquitaine. In the same year Giselbert, Duke of Burgundy acknowledged Hugh as his overlord and gave his daughter in marriage to Hugh's son Otto-Henry. On 16 June 956 Hugh the Great died in Dourdan.
Rounding
Rounding to integer
The most basic form of rounding is to replace an arbitrary number by an integer. All the following rounding modes are concrete implementations of the abstract single-argument "round" function presented and used in the previous sections.
Hugh the Great
Family
In 922 Hugh married Judith, the daughter of Roger, Count of Maine and Rothilde. She died childless in 925.
Hugh's second wife was Eadhild, daughter of Edward the Elder, king of the Anglo-Saxons. They married in 926 and she died in 938, childless. Hugh's third wife was Hedwig of Saxony, daughter of Henry the Fowler and Matilda of Ringelheim. She and Hugh had:
Rounding
Rounding to integer
There are many ways of rounding a number y to an integer q. The most common ones are
The first four methods are called directed rounding, as the displacements from the original number y to the rounded value q are all directed towards or away from the same limiting value (0, +∞, or −∞).
If y is positive, round-down is the same as round-towards-zero, and round-up is the same as round-away-from-zero. If y is negative, round-down is the same as round-away-from-zero, and round-up is the same as round-towards-zero. In any case, if y is integer, q is just y. The following table illustrates these rounding methods:
Where many calculations are done in sequence, the choice of rounding method can have a very significant effect on the result. A famous instance involved a new index set up by the Vancouver Stock Exchange in 1982. It was initially set at 1000.000, and after 22 months had fallen to about 520 — whereas stock prices had generally increased in the period. The problem was caused by the index being recalculated thousands of times daily, and always being rounded down to 3 decimal places, in such a way that the rounding errors accumulated. Recalculating with better rounding gave an index value of 1098.892 at the end of the same period.
Tie-breaking
Rounding a number y to the nearest integer requires some tie-breaking rule for those cases when y is exactly half-way between two integers — that is, when the fraction part of y is exactly 0.5.
Round half up
The following tie-breaking rule, called round half up (or round half towards plus infinity), is widely used in many disciplines. That is, half-way values y are always rounded up.
For example, by this rule the value 23.5 gets rounded to 24, but −23.5 gets rounded to −23.
This is one of two rules generally taught in US elementary mathematics classes.
If it were not for the 0.5 fractions, the roundoff errors introduced by the round to nearest method would be quite symmetric: for every fraction that gets rounded up (such as 0.268), there is a complementary fraction (namely, 0.732) that gets rounded down, by the same amount. When rounding a large set of numbers with random fractional parts, these rounding errors would statistically compensate each other, and the expected (average) value of the rounded numbers would be equal to the expected value of the original numbers.
However, the round half up tie-breaking rule is not symmetric, as the fractions that are exactly 0.5 always get rounded up. This asymmetry introduces a positive bias in the roundoff errors. For example, if the fraction of y consists of three random decimal digits, then the expected value of q will be 0.0005 higher than the expected value of y. For this reason, round-to-nearest with the round half up rule is also (ambiguously) known as asymmetric rounding.
One reason for rounding up at 0.5 is that only one digit need be examined. When seeing 17.50000..., for example, the first three figures, 17.5, determines that the figure would be rounded up to 18. If the opposite rule were used (round half down), then all the zero decimal places would need to be examined to determine if the value is exactly 17.5.
Round half down
One may also use round half down (or round half towards minus infinity) as opposed to the more common round half up (the round half up method is a common convention, but is nothing more than a convention).
The round half down tie-breaking rule is not symmetric, as the fractions that are exactly 0.5 always get rounded down. This asymmetry introduces a negative bias in the roundoff errors. For example, if the fraction of y consists of three random decimal digits, then the expected value of q will be 0.0005 lower than the expected value of y. For this reason, round-to-nearest with the round half down rule is also (ambiguously) known as asymmetric rounding.
Round half away from zero
The other tie-breaking method commonly taught and used is the round half away from zero (or round half towards infinity), namely:
For example, 23.5 gets rounded to 24, and −23.5 gets rounded to −24.
This method treats positive and negative values symmetrically, and therefore is free of overall bias if the original numbers are positive or negative with equal probability. However, this rule will still introduce a positive bias for positive numbers, and a negative bias for the negative ones.
It is often used for currency conversions and price roundings (when the amount is first converted into the smallest significant subdivision of the currency, such as cents of a euro) as it is easy to explain by just considering the first fractional digit, independently of supplementary precision digits or sign of the amount (for strict equivalence between the paying and recipient of the amount).
Round half towards zero
One may also round half towards zero (or round half away from infinity) as opposed to the more common round half away from zero (the round half away from zero method is a common convention, but is nothing more than a convention).
For example, 23.5 gets rounded to 23, and −23.5 gets rounded to −23.
Plourin-lès-Morlaix
Plourin-lès-Morlaix (Plourin-Montroulez) is a commune. It is found in the region Brittany in the Finistère department in the northwest of France.
Rounding
Round half towards zero
This method also treats positive and negative values symmetrically, and therefore is free of overall bias if the original numbers are positive or negative with equal probability. However, this rule will still introduce a negative bias for positive numbers, and a positive bias for the negative ones.
Round half to even
Thus, for example, +23.5 becomes +24, +22.5 becomes +22, −22.5 becomes −22, and −23.5 becomes −24.
This method also treats positive and negative values symmetrically, and therefore is free of overall bias if the original numbers are positive or negative with equal probability. In addition, for most reasonable distributions of y values, the expected (average) value of the rounded numbers is essentially the same as that of the original numbers, even if the latter are all positive (or all negative). However, this rule will still introduce a positive bias for even numbers (including zero), and a negative bias for the odd ones.
Round half to odd
Thus, for example, +22.5 becomes +23, +21.5 becomes +21, −21.5 becomes −21, and −22.5 becomes −23.
This variant is almost never used in most computations, except in situations where one wants to avoid rounding 0.5 or −0.5 to zero, or to avoid increasing the scale of numbers represented as floating point (with limited ranges for the scaling exponent), so that a non infinite number would round to infinite, or that a small denormal value would round to a normal non-zero value (these could occur with the round half to even mode). Effectively, this mode prefers preserving the existing scale of tie numbers, avoiding out of range results when possible.
Stochastic rounding
Another unbiased tie-breaking method is stochastic rounding:
Like round-half-to-even, this rule is essentially free of overall bias; but it is also fair among even and odd q values. On the other hand, it introduces a random component into the result; performing the same computation twice on the same data may yield two different results. Also, it is open to unconscious bias if humans (rather than computers or devices of chance) are "randomly" deciding in which direction to round.
Alternating tie-breaking
One method, more obscure than most, is round half alternatingly.
This suppresses the random component of the result, if occurrences of 0.5 fractional parts can be effectively numbered. But it can still introduce a positive or negative bias according to the direction of rounding assigned to the first occurrence, if the total number of occurrences is odd.
Simple dithering
In some contexts, all the rounding methods above may be unsatisfactory. For example, suppose that y is an accurate measurement of an audio signal, which is being rounded to an integer q in order to reduce the storage or transmission costs. If y changes slowly with time, any of the rounding method above will result in q being completely constant for long intervals, separated by sudden jumps of ±1. When the q signal is played back, these steps will be heard as a very disagreeable noise, and any variations of the original signal between two integer values will be completely lost.
One way to avoid this problem is to round each value y upwards with probability equal to its fraction, and round it downwards with the complement of that probability. For example, the number 23.17 would be rounded up to 24 with probability 0.17, and down to 23 with probability 1 - 0.17 = 0.83. (This is equivalent to rounding down y + s, where s is a random number uniformly distributed between 0 and 1.) With this special rounding, known as dithering, the sudden steps get replaced by a less objectionable noise, and even small variations in the original signal will be preserved to some extent. Like the stochastic approach to tie-breaking, dithering has no bias: if all fraction values are equally likely, rounding up by a certain amount is as likely as rounding down by that same amount; and the same is true for the sum of several rounded numbers. On the other hand, dithering introduces a random component in the result, much greater than that of stochastic tie-breaking.
More precisely, the roundoff error for each dithered number will be a uniformly distributed random variable with mean value of zero, but with a standard deviation, which is better than the 1/2 standard deviation with the simple predictive methods, but slightly higher than with the simpler stochastic method. However, the sum of n rounded numbers will be a random variable with expected error zero, but with standard deviation (the total remaining noise) which diverges semi-quadratically and may become easily perceptible, even if the standard deviation of the roundoff error per sample will be  which slowly converges semi-quadratically to zero. So, this random distribution may still be too high for some applications that are rounding a lot of data.
Multidimensional dithering
This variant of the simple dithering method still rounds values with probability equal to its fraction. However, instead of using a random distribution for rounding isolated samples, the roundoff error occurring at each rounded sample is totalled for the next surrounding elements to sample or compute; this accumulated value is then added to the value of these next sampled or computed values to round, so that the modified values will take into account this difference using a predictive model (such as Floyd–Steinberg dithering).
The modified values are then rounded with any one of the above rounding methods, the best ones being with stochastic or dithering methods: in this last case, the sum of n rounded numbers will still be a random variable with expected error zero but with an excellent constant standard deviation of, instead of diverging semi-quadratically when dithering isolated samples; and the overall average roundoff error deviation per rounded sample will be that will converge hyperbolically to zero, faster than with the semi-hyperbolic convergence when dithering isolated samples.
In practice, when rounding large sets of sampled data (such as audio, image and video rendering), the accumulation of roundoff errors is most frequently used with a simple predictive rounding of the modified values (such as rounding towards zero), because it will still preserve the hyperbolic convergence towards zero of the overall mean roundoff error bias and of its standard deviation. This enhancement is frequently used in image and audio processing (notably for accurate rescaling and antialiasing operations, where the simple probabilistic dithering of isolated values may still produce perceptible noise, sometimes even worse than the moiré effects occurring with simple non-probabilistic rounding methods applied to isolated samples).
The effective propagation of accumulated roundoff errors may depend on the discrete dimension of the sampled data to round: when sampling bidimensional images, including colored images (that add the discrete dimension of color planes), or tridimensional videos (that add a discrete time dimension), or on polyphonic audio data (using time and channel discrete dimensions), it may still be preferable to propagate this error into a preferred direction, or equally into several orthogonal dimensions, such as vertically vs. horizontally for bidimensional images, or into parallel color channels at the same position and/or timestamp, and depending on other properties of these orthogonal discrete dimensions (according to a perception model). In those cases, several roundoff error accumulators may be used (at least one for each discrete dimension), or a (n-1)-dimension vector (or matrix) of accumulators.
In some of these cases, the discrete dimensions of the data to sample and round may be treated non orthogonally: for example, when working with colored images, the trichromatic color planes data in each physical dimension (height, width and optionally time) could be remapped using a perceptive color model, so that the roundoff error accumulators will be designed to preserve lightness with a higher probability than hue or saturation, instead of propagating errors into each orthogonal color plane independently; and in stereophonic audio data the two rounded data channels (left and right) may be rounded together to preserve their mean value in priority to their effective difference that will absorb most of the remaining roundoff errors, in a balanced way around zero.
Rounding to simple fractions
In some contexts it is desirable to round a given number x to a "neat" fraction — that is, the nearest fraction z = m/n whose numerator m and denominator n do not exceed a given maximum. This problem is fairly distinct from that of rounding a value to a fixed number of decimal or binary digits, or to a multiple of a given unit m. This problem is related to Farey sequences, the Stern-Brocot tree, and continued fractions.
Scaled rounding
This type of rounding, which is also named rounding to a logarithmic scale, is a variant of Rounding to a specified increment but with an increment that is modified depending on the scale and magnitude of the result. Concretely, the intent is to limit the number of significant digits, rounding the value so that non-significant digits will be dropped. This type of rounding occurs implicitly with numbers computed with floating-point values with limited precision (such as IEEE-754 float and double types), but it may be used more generally to round any real values with any positive number of significant digits and any strictly positive real base.
For example it can be used in engineering graphics for representing data with a logarithmic scale with variable steps (for example wave lengths, whose base is not necessarily an integer measure), or in statistical data to define classes of real values within intervals of exponentially growing widths (but the most common use is with integer bases such as 10 or 2).
This type of rounding is based on a logarithmic scale defined by a fixed non-zero real scaling factor s (in most frequent cases this factor is s=1) and a fixed positive base b>1 (not necessarily an integer and most often different from the scaling factor), and a fixed integer number n>0 of significant digits in that base (which will determine the value of the increment to use for rounding, along with the computed effective scale of the rounded number).
The primary argument number (as well as the resulting rounded number) is first represented in exponential notation x = s·a·m·bc, such that the sign s is either +1 or −1, the absolute mantissa a is restricted to the half-open positive interval [1/b,1), and the exponent c is any (positive or negative) integer. In that representation, all significant digits are in the fractional part of the absolute mantissa whose integer part is always zero.
If the source number (or rounded number) is 0, the absolute mantisssa a is defined as 0, the exponent c is fixed to an arbitrary value (0 in most conventions, but some floating-point representations cannot use a null absolute mantissa but reserve a specific maximum negative value for the exponent c to represent the number 0 itself), and the sign s may be arbitrarily chosen between −1 or +1 (it is generally set to +1 for simple zero, or it is set to the same sign as the argument in the rounded value if the number representation allows to differentiate positive and negative zeroes, even if they finally represent the same numeric value 0).
A scaled exponential representation as x = a·s·bc may also be used equivalently, with a signed mantissa a either equal to zero or within one of the two half-open intervals (−1,−1/b] and [+1/b,+1), and this will be the case in the algorithm below.
The steps to compute this scaled rounding are generally similar to the following:
c' = c\,
.
For the abstract "round" function, this type of rounding can use any one of the rounding to integer modes described more completely in the next section, but it is most frequently the round to nearest mode (with tie-breaking rules also described more completely below).
For example:
Round to available value
Finished lumber, writing paper, capacitors, and many other products are usually sold in only a few standard sizes.
Many design procedures describe how to calculate an approximate value, and then "round" to some standard size using phrases such as "round down to nearest standard value", "round up to nearest standard value", or "round to nearest standard value".
When a set of preferred values is equally spaced on a logarithmic scale, Choosing the closest preferred value to any given value can be seen as a kind of scaled rounding. Such "rounded" values can be directly calculated.
Floating-point rounding
In floating-point arithmetic, rounding aims to turn a given value x into a value z with a specified number of significant digits. In other words, z should be a multiple of a number m that depends on the magnitude of z. The number m is a power of the base (usually 2 or 10) of the floating-point form.
Apart from this detail, all the variants of rounding discussed above apply to the rounding of floating-point numbers as well. The algorithm for such rounding is presented in the Scaled rounding section above, but with a constant scaling factor s=1, and an integer base b>1.
For results where the rounded result would overflow the result for a directed rounding is either the appropriate signed infinity, or the highest representable positive finite number (or the lowest representable negative finite number if x is negative), depending on the direction of rounding. The result of an overflow for the usual case of round to even is always the appropriate infinity.
In addition, if the rounded result would underflow, i.e. if the exponent would exceed the lowest representable integer value, the effective result may be either zero (possibly signed if the representation can maintain a distinction of signs for zeroes), or the smallest representable positive finite number (or the highest representable negative finite number if x is negative), possibly a denormal positive or negative number (if the mantissa is storing all its significant digits, in which case the most significant digit may still be stored in a lower position by setting the highest stored digits to zero, and this stored mantissa does not drop the most significant digit, something that is possible when base b=2 because the most significant digit is always 1 in that base), depending on the direction of rounding. The result of an underflow for the usual case of round to even is always the appropriate zero.
Double rounding
Rounding a number twice in succession to different precisions, with the latter precision being coarser, is not guaranteed to give the same result as rounding once to the final precision except in the case of directed rounding. For instance rounding 9.46 to one decimal gives 9.5, and then 10 when rounding to integer using rounding half to even, but would give 9 when rounded to integer directly.
Some computer languages and the IEEE 754-2008 standard dictate that in straightforward calculations, the result should not be rounded twice. This has been a particular problem with Java as it is designed to be run identically on different machines, special programming tricks have had to be used to achieve this with x87 floating point. The Java language was changed to allow different results where the difference does not matter and require a "strictfp" qualifier to be used when the results have to conform accurately.
Exact computation with rounded arithmetic
It is possible to use rounded arithmetic to evaluate the exact value of a function with a discrete domain and range. For example, if we know that an integer n is a perfect square, we can compute its square root by converting n to a floating-point value x, computing the approximate square root y of x with floating point, and then rounding y to the nearest integer q. If n is not too big, the floating-point roundoff error in y will be less than 0.5, so the rounded value q will be the exact square root of n. In most modern computers, this method may be much faster than computing the square root of n by an all-integer algorithm.
The table-maker's dilemma
William Kahan coined the term "The Table-Maker's Dilemma" for the unknown cost of rounding transcendental functions:
The IEEE floating point standard guarantees that add, subtract, multiply, divide, square root, and floating point remainder will give the correctly rounded result of the infinite precision operation. However, no such guarantee is given for more complex functions and they are typically only accurate to within the last bit at best.
There are some packages around now that offer full accuracy. The MPFR package gives correctly rounded arbitrary precision results. IBM has written a package for fast and accurate IEEE elementary functions and in the future the standard libraries may offer such precision.
It is possible to devise well-defined computable numbers which it may never be possible to correctly round no matter how many digits are calculated. For instance, if Goldbach's conjecture is true but unprovable, then it is impossible to correctly round down 0.5 + 10-n where n is the first even number greater than 4 which is not the sum of two primes, or 0.5 if there is no such number. This can however be approximated to any given precision even if the conjecture is unprovable.
History
The concept of rounding is very old, perhaps older even than the concept of division. Some ancient clay tablets found in Mesopotamia contain tables with rounded values of reciprocals and square roots in base 60. Rounded approximations to π, the length of the year, and the length of the month are also ancient.
The Round-to-even method has served as the ASTM (E-29) standard since 1940. The origin of the terms unbiased rounding and statistician's rounding are fairly self-explanatory. In the 1906 4th edition of Probability and Theory of Errors Robert Simpson Woodward called this "the computer's rule" indicating that it was then in common use by human computers who calculated mathematical tables. Churchill Eisenhart's 1947 paper "Effects of Rounding or Grouping Data" (in Selected Techniques of Statistical Analysis, McGrawHill, 1947, Eisenhart, Hastay, and Wallis, editors) indicated that the practice was already "well established" in data analysis.
The origin of the term "bankers' rounding" remains more obscure. If this rounding method was ever a standard in banking, the evidence has proved extremely difficult to find. To the contrary, section 2 of the European Commission report The Introduction of the Euro and the Rounding of Currency Amounts suggests that there had previously been no standard approach to rounding in banking; and it specifies that "half-way" amounts should be rounded up.
Until the 1980s, the rounding method used in floating-point computer arithmetic was usually fixed by the hardware, poorly documented, inconsistent, and different for each brand and model of computer. This situation changed after the IEEE 754 floating point standard was adopted by most computer manufacturers. The standard allows the user to choose among several rounding modes, and in each case, specifies precisely how the results should be rounded. These features made numerical computations more predictable and machine-independent, and made possible the efficient and consistent implementation of interval arithmetic.
Rounding functions in programming languages
Most programming languages provide functions or special syntax to round fractional numbers in various ways. The earliest numeric languages, such as FORTRAN and C, would provide only one method, usually truncation (towards zero). This default method could be implied in certain contexts, such as when assigning a fractional number to an integer variable, or using a fractional number as an index of an array. Other kinds of rounding had to be programmed explicitly; for example, rounding a positive number to the nearest integer could be implemented by adding 0.5 and truncating.
In the last decades, however, the syntax and/or the standard libraries of most languages have commonly provided at least the four basic rounding functions (up/ceiling, down/floor, to nearest, and towards zero). The tie-breaking method may vary depending the language and version, and/or may be selectable by the programmer. Several languages follow the lead of the IEEE-754 floating-point standard, and define these functions as taking a double precision float argument and returning the result of the same type, which then may be converted to an integer if necessary. Since the IEEE double precision format has 52 fraction bits, this approach may avoid spurious overflows in languages have 32-bit integers. Some languages, such as PHP, provide functions that round a value to a specified number of decimal digits, e.g. from 4321.5678 to 4321.57 or 4300. In addition, many languages provide a "printf" or similar string formatting function, which allows one to convert a fractional number to a string, rounded to a user-specified number of decimal places (the precision). On the other hand, truncation (round to zero) is still the default rounding method used by many languages, especially for the division of two integer values.
On the opposite, CSS and SVG do not define any specific maximum precision for numbers and measurements, that are treated and exposed in their Document Object Model and in their Interface-description-language interface as strings as if they had infinite precision, and do not discriminate between integers and floating point values; however, the implementations of these languages will typically convert these numbers into IEEE-754 double floating points before exposing the computed digits with a limited precision (notably within standard Javascript or ECMAScript interface bindings).
Other rounding standards
Some disciplines or institutions have issued standards or directives for rounding.
U.S. Weather Observations
In a guideline issued in mid-1966, the U.S. Office of the Federal Coordinator for Meteorology determined that weather data should be rounded to the nearest round number, with the "round half up" tie-breaking rule. For example, 1.5 rounded to integer should become 2, and −1.5 should become −1. Prior to that date, the tie-breaking rule was "round half away from zero".
Negative zero in meteorology
Some meteorologists may write "-0" to indicate a temperature between 0.0 and -0.5 degrees (exclusive) that was rounded to integer. This notation is used when the negative sign is considered important, no matter how small is the magnitude; for example, when rounding temperatures in the Celsius scale, where below zero indicates freezing.
Other websites
An introduction to different rounding algorithms that is accessible to a general audience but especially useful to those studying computer science and electronics.
Shake It (Metro Station song)
Shake It is a 2008 song by Metro Station. It is from their album Metro Station. The song video was released in 2008.
Deepwater rice
Deepwater rice is the name for different species of rice that grow in deeper water (of 50 cm to 1 m. These varieties have adaptations that allow them to keep their leaves outside the water: Either they have longer leaves, or they float on top of the water.
More than 100 million people in Southeast Asia including Northeastern India rely on deepwater rice for their sustenance. Two adaptations permit the rice to live in deeper water, floating rice and traditional talls. Traditional talls are varieties that are grown at water depths between 50 and 100 cm. They have developed to be taller and have longer leaves than standard rice. Floating rice grows in water deeper than 100 cm through advanced elongation ability. This means when a field where rice is growing floods, accelerated growth in the internodal of the stem allows the plant to keep some of its foliage on top of the water. The O. s. indica cultivar is the main type of deepwater rice, although varieties of O. s. japonica have been found in Burma and Assam Plains.
Usually, rice is grown in shallow water, using paddy fields.
Bird
Good
Birds (Aves) are a group of animals with backbones which evolved from dinosaurs. Technically speaking, they are dinosaurs.
Polish Americans
Most Polish immigrants are Catholic or practice Judaism.
Bird
Birds are endothermic. The heat loss from their bodies is slowed down by their feathers. Modern birds are toothless: they have beaked jaws. They lay hard-shelled eggs. They have a high metabolic rate, a four-chambered heart and a strong yet lightweight skeleton.
Birds live all over the world. They range in size from the 5 cm (2 in) bee hummingbird to the 2.70 m (9 ft) ostrich. They are the tetrapods with the most living species: about ten thousand. More than half of these are passerines, sometimes known as perching birds.
Birds are the closest living relatives of the Crocodilia. This is because they are the two main survivors of a once huge group called the Archosaurs.
Modern birds are not descended from Archaeopteryx. According to DNA evidence, modern birds (Neornithes) evolved in the long Upper Cretaceous period. More recent estimates showed that modern birds originated early in the Upper Cretaceous.
Primitive bird-like dinosaurs are in the broader group Avialae. They have been found back to the mid-Jurassic period, around 170 million years ago. Many of these early "stem-birds", such as Anchiornis, were not yet capable of fully powered flight. Many had primitive characteristics like teeth in their jaws and long bony tails. p274
The Cretaceous–Palaeogene extinction event 66 million years ago killed off all the non-avian dinosaur lines. Birds, especially those in the southern continents, survived this event and then migrated to other parts of the world. Diversification occurred around the Cretaceous–Palaeogene extinction event.
Birds have wings which are more or less developed depending on the species. The only known groups without wings are the extinct moa and elephant birds. Wings, which evolved from forelimbs, gave birds the ability to fly. Later, many groups evolved with reduced wings, such as ratites, penguins and many island species of birds. The digestive and respiratory systems of birds are also adapted for flight. Some bird species in aquatic environments, particularly seabirds and some waterbirds, have evolved as good swimmers.
In general, birds are effective, and inherit their behaviour almost entirely. The key elements of their life are inherited. It was a great discovery that birds never learn to fly. So it is quite wrong to say, when a chick waves its wings in the nest "It's learning to fly". What the chick is doing is exercising its muscles. They develop the ability to fly automatically (assuming they are species that do fly). And if they are species which migrate, that behaviour is also inherited. Many species migrate over great distances each year. Other main features of their life may be inherited, though they can and do learn. Birds have good memories which they use, for example, when they search for food.
555
555 was a common year starting on Friday of the Julian calendar.
Bird
Several bird species make and use tools. Some social species pass on some knowledge across generations, a form of culture. Birds are social. They communicate with visual signals, calls and bird songs. Most of their social behaviours are inherited, such as cooperative breeding and hunting, flocking and mobbing of predators.
Most bird species are socially monogamous, usually for one breeding season at a time, sometimes for years, but rarely for life. Other species are polygynous (one male with many females) or, rarely, polyandrous (one female with many males). Birds produce offspring by laying eggs which are fertilised by sexual reproduction. They are often laid in a nest and incubated by the parents. Most birds have an extended period of parental care after hatching. Some birds, such as hens, lay eggs even when not fertilised, though unfertilised eggs do not produce offspring.
Many species of birds are eaten by humans. Domesticated and undomesticated birds are sources of eggs, meat, and feathers. In English, domesticated birds are often called poultry, undomesticated birds are called game. Songbirds, parrots and other species are popular as pets. Guano, which is bird manure, is harvested for use as a fertiliser. Birds figure throughout human culture. About 120–130 species have become extinct due to human activity since the 17th century and hundreds more before then. Human activity threatens about 1,200 bird species with extinction, though efforts are underway to protect them. Recreational bird-watching is an important part of the ecotourism industry.
Bird colours
Birds come in a huge range of colours. These colours can be useful to a bird in two ways. Camouflage colours help to hide the bird, and bright colours identify the bird to others of the same species. Often the male is brightly coloured while the female is camouflaged. The logic is as follows: the female carries the "precious package" of developing eggs. The male has to defend a territory, and the function of his colour and song is to let others know that "this place is occupied".
Bird camouflage
Many birds are brown, green or grey. These colours make a bird harder to be seen: they camouflage the bird. Brown is the most common colour. Brown birds include: sparrows, emus, thrushes, larks, eagles and falcons and the female birds of many species such as: wrens, ducks, blackbirds and peafowls. When a brown bird is in long grass or among tree trunks or rocks, it is camouflaged. Birds that live in long grass often have brown feathers streaked with black which looks like shadows. A bittern is almost invisible in long reeds because its camouflage is helped by its posture (beak and head pointed upwards). Other birds, including starlings and mynas, are quite dark in colour, but are flecked with little spots that look like raindrops on leaves. Bird may also camouflage their nests.
Many birds from hot countries are green or have some green feathers, particularly parrots. Birds that live in green trees often have green backs, even if they have bright-coloured breasts. From the back, the birds are camouflaged. This is very useful when sitting on a nest. The bird's bright-coloured breast is hidden. Budgerigars are bred in different colours such as blue, white and mauve, but in the wild, they are nearly all green and yellow. Even though they fly very well, they normally spend a lot of time on the ground, eating grass seeds. Their yellow and black striped back helps to hide them in the shadows made by long dry grass, while their green breasts are a similar colour to the leaves of gum trees.
Grey birds include most pigeons and doves, cranes, storks and herons. Grey birds are often rock-living birds like pigeons or birds that sit on dead tree trunks looking like a broken branch. Water birds like herons often have a pale grey colour which makes it harder for a fish to notice that the bird is standing, looking down for something to catch. Water birds, no matter what colour they are on top, are often white underneath, so that when a fish looks up, the bird looks like part of the sky.
Noticeable colours
Many birds are not camouflaged, but stand out with vivid colours. They are usually male birds whose females are dull and camouflaged. The function of the colours is two-fold. First, the colours help them get mates, and second, the colours identify them to other males of the same species. Many birds are territorial, especially in the nesting season. They give out territory sounds and are easily seen. This lets other males know they will defend their territory. It sends out a "look elsewhere" signal to their competitors.
Some birds are famous for their colour and some are named for it, such as the bluebird, the azure kingfisher, the golden pheasant, the scarlet macaw. The European robin is known popularly as the red robin.
Many other birds are very brightly coloured, in countless combinations. Some of the most colourful birds are quite common, like pheasants, peacocks, domestic fowl and parrots. Colourful small birds include blue tits, the goldfinches, hummingbirds, fairy wrens and bee eaters (which are also called rainbow birds). Some birds, like those of the bird of paradise in Papua New Guinea have such beautiful feathers that they have been hunted for them.
Pied birds are black and white. Black and white birds include magpies, pied geese, pelicans and Australian magpies (which are not really magpies at all). Pied birds often have brightly coloured beaks and legs of yellow or red. The silver pheasant, with its long white tail striped with fine bars of black, has a brightly coloured face.
Flight
Most birds can fly, and if they do, then the ability is inherited, not learnt. They fly by pushing through the air with their wings. The curved surfaces of the wings cause air currents (wind) which lift the bird. Flapping keeps the air current moving to create lift and also moves the bird forward.
Types of flight
Different types of birds have different needs. Their wings have evolved to suit their lifestyle. Large birds of prey, such as eagles, spend a lot of time soaring on the wind. They have wings that are large and broad. The main flight feathers are long and wide. They help the eagle to stay on rising air currents without using much energy, while the eagle looks at the ground below, to find the next meal. When the eagle sees some small creature move, it can close its wings and fall from the sky like a missile, opening its great wings again to slow down as it comes to land. The world's largest eagle, the Philippine eagle has a wingspan of about 2 m (6.7 ft) wide.
Birds that live in grassland areas or open forests and feed on fruit, insects and reptiles often spend a lot of time flying short journeys looking for food and water. They have wings that are shaped in a similar way to eagles, but rounder and not as good for soaring. These include many Australian birds like cockatoos.
Birds such as geese that migrate from one country to another fly very long distances. Their wings are big and strong, because the birds are large. They stock up on food for the long flight. Migrating water birds usually form family groups of 12–30 birds. They fly very high, making use of long streams of air that blow from north to south in different seasons. They are well organised, often flying in a V pattern. The geese at the back do not have to flap so hard; they are pulled on by the wind of the ones at the front. Every so often, they change the leader so that the front bird, who does most work and sets the pace, can have a rest. Geese and swans are the highest-flying birds, reaching 8,000 metres or more when on migration. Geese often honk loudly while they are flying. It is thought that they do this to support the leader and help the young ones.
Birds that fly very quickly, such as swifts and swallows, have long narrow pointed wings. These birds need great speed because they eat insects, catching most of them while they are flying. These birds also migrate. They often collect in huge flocks of thousands of birds that move together like a whirling cloud.
Birds that live in bushes and branches have triangular wings that help the bird change direction. Many forest birds are expert at getting up speed by flapping and then gliding steadily among the trees, tilting to avoid things as they go.