Anonymous user
Range consolidation: Difference between revisions
m
added whitespace and hightlighting.
(Add Factor) |
m (added whitespace and hightlighting.) |
||
Line 1:
{{task}}
Define a range of numbers
That range can be shown as:
::::::::: '''[b0, b1]'''
:::::::: or equally as:
::::::::: '''[b1, b0]'''
Given two ranges, the act of consolidation between them compares the two ranges:
* If one range covers all of the other then the result is that encompassing range.
* If the ranges touch or intersect then the result is ''one'' new single range covering the overlapping ranges.
* Otherwise the act of consolidation is to return the two non-touching ranges.
Given '''N''' ranges where '''N > 2''' then the result is the same as repeatedly replacing all combinations of two ranges by their consolidation until no further consolidation between range pairs is possible
If '''N < 2''' then range consolidation has no strict meaning and the input can be returned.
: Given the two ranges
: there is no common region between the ranges and the result is the same as the input.▼
: Given the two ranges
: there is : an overlap '''[2.5, 1.8]''' between the ranges and
:
: Given the two ranges
: they touch at '''7.2''' and
: the result is the single range '''[6.1, 8.3]'''.
: Given the three ranges
: then there is no intersection of the ranges
: but the ranges
: consolidate to produce the range '''[1, 5]'''.
:
:
▲Given N ranges where N>2 then the result is the same as repeatedly replacing all combinations of two ranges by their consolidation until no further consolidation between range pairs is possible. If N<2 then range consolidation has no strict meaning and the input can be returned.
Let a normalized range display show the smaller bound to the left; and show the▼
range with the smaller lower bound to the left of other ranges when showing multiple ranges.▼
Output the ''
▲;'''Example 1:'''
[1.1, 2.2]▼
▲:Given the two ranges <tt>[1, 2.5]</tt> and <tt>[3, 4.2]</tt> then there is no
[6.1, 7.2], [7.2, 8.3]▼
▲:common region between the ranges and the result is the same as the input.
[4, 3], [2, 1]▼
▲;'''Example 2:'''
[4, 3], [2, 1], [-1, -2], [3.9, 10]▼
▲:Given the two ranges <tt>[1, 2.5]</tt> and <tt>[1.8, 4.7]</tt> then there is
[1, 3], [-6, -1], [-4, -5], [8, 2], [-6, -6] </big>▼
Show all output here.▼
▲:range <tt>[1, 4.7]</tt>. Note that order of bounds in a range is not, (yet), stated.
▲;'''Example 3:'''
▲:Given the two ranges <tt>[6.1, 7.2]</tt> and <tt>[7.2, 8.3]</tt> then they
▲:touch at <tt>7.2</tt> and the result is the single range <tt>[6.1, 8.3]</tt>.
▲;'''Example 4:'''
▲:Given the three ranges <tt>[1, 2]</tt> and <tt>[4, 8]</tt> and <tt>[2, 5]</tt>
▲:then there is no intersection of the ranges <tt>[1, 2]</tt> and <tt>[4, 8]</tt>
▲:but the ranges <tt>[1, 2]</tt> and <tt>[2, 5]</tt> overlap and consolidate to
▲:produce the range <tt>[1, 5]</tt>. This range, in turn, overlaps the other range
▲:<tt>[4, 8]</tt>, and so consolidates to the final output of the single range
▲;'''Task:'''
▲Let a normalized range display show the smaller bound to the left; and show the
▲range with the smaller lower bound to the left of other ranges when showing multiple
▲Output the ''normalised'' result of applying consolidation to these five sets of ranges:
▲ [1.1, 2.2]
▲ [6.1, 7.2], [7.2, 8.3]
▲ [4, 3], [2, 1]
▲ [4, 3], [2, 1], [-1, -2], [3.9, 10]
▲ [1, 3], [-6, -1], [-4, -5], [8, 2], [-6, -6]
▲Show output here.
▲'''See also'''
* [[Set consolidation]]
* [[Set of real numbers]]
|