9.20. ÐиапазоннÑе/мÑлÑÑидиапазоннÑе ÑÑнкÑии и опеÑаÑоÑÑ #
ÐиапазоннÑе ÑÐ¸Ð¿Ñ Ð´Ð°Ð½Ð½ÑÑ ÑаÑÑмаÑÑиваÑÑÑÑ Ð² Разделе 8.17.
РТаблиÑе 9.58 Ð¿Ð¾ÐºÐ°Ð·Ð°Ð½Ñ Ð¸Ð¼ÐµÑÑиеÑÑ ÑпеÑиалÑнÑе опеÑаÑоÑÑ Ð´Ð»Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð½ÑÑ Ñипов, а в ТаблиÑе 9.59 â Ð´Ð»Ñ Ð¼ÑлÑÑидиапазоннÑÑ Ñипов. ÐÑоме Ð½Ð¸Ñ Ð´Ð»Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð¾Ð² и мÑлÑÑидиапазонов опÑÐµÐ´ÐµÐ»ÐµÐ½Ñ Ð¾Ð±ÑÑнÑе опеÑаÑоÑÑ ÑÑавнениÑ, показаннÑе в ТаблиÑе 9.1. ÐпеÑаÑоÑÑ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ ÑнаÑала ÑÑавниваÑÑ Ð½Ð¸Ð¶Ð½Ð¸Ðµ гÑаниÑÑ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð¾Ð², и ÑолÑко еÑли они ÑавнÑ, ÑÑавниваÑÑ Ð²ÐµÑÑ Ð½Ð¸Ðµ гÑаниÑÑ. ÐпеÑаÑоÑÑ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ð¼ÑлÑÑидиапазонов ÑÑавниваÑÑ ÐºÐ°Ð¶Ð´Ñй диапазон, пока не найдÑÑ Ð½ÐµÑавенÑÑво. Такие опеÑаÑоÑÑ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ð¾Ð±ÑÑно не помогаÑÑ Ð¿Ð¾Ð»ÑÑиÑÑ Ð¿Ð¾Ð»ÐµÐ·Ð½Ñй в Ñелом ваÑÐ¸Ð°Ð½Ñ ÑоÑÑиÑовки, но позволÑÑÑ ÑÑÑоиÑÑ Ð¿Ð¾ диапазонам ÑникалÑнÑе индекÑÑ.
ТаблиÑа 9.58. ÐиапазоннÑе опеÑаÑоÑÑ
ÐпеÑаÑÐ¾Ñ ÐпиÑание ÐÑимеÑ(Ñ) |
|---|
ÐеÑвÑй диапазон ÑодеÑÐ¶Ð¸Ñ Ð²ÑоÑой?
|
Ðиапазон ÑодеÑÐ¶Ð¸Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñй ÑлеменÑ?
|
ÐеÑвÑй диапазон ÑодеÑжиÑÑÑ Ð²Ð¾ вÑоÑом?
|
ÐаданнÑй ÑÐ»ÐµÐ¼ÐµÐ½Ñ ÑодеÑжиÑÑÑ Ð² диапазоне?
|
ÐÐ¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð¿ÐµÑеÑекаÑÑÑÑ (Ñ Ð½Ð¸Ñ ÐµÑÑÑ Ð¾Ð±Ñие ÑлеменÑÑ)?
|
ÐеÑвÑй диапазон ÑаÑполагаеÑÑÑ ÑÑÑого Ñлева Ð¾Ñ Ð²ÑоÑого?
|
ÐеÑвÑй диапазон ÑаÑполагаеÑÑÑ ÑÑÑого ÑпÑава Ð¾Ñ Ð²ÑоÑого?
|
ÐеÑвÑй диапазон не пÑоÑÑиÑаеÑÑÑ Ð¿Ñавее вÑоÑого?
|
ÐеÑвÑй диапазон не пÑоÑÑиÑаеÑÑÑ Ð»ÐµÐ²ÐµÐµ вÑоÑого?
|
ÐÐ¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð¿ÑимÑкаÑÑ Ð´ÑÑг к дÑÑгÑ?
|
ÐÑÑиÑлÑÐµÑ Ð¾Ð±Ñединение диапазонов. ÐÐ¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¿ÐµÑеÑекаÑÑÑÑ Ð¸Ð»Ð¸ каÑаÑÑÑÑ Ð´ÑÑг дÑÑга, ÑÑÐ¾Ð±Ñ Ð¸Ñ
обÑединением бÑл один диапазон (но Ñм.
|
ÐÑÑиÑлÑÐµÑ Ð¿ÐµÑеÑеÑение диапазонов.
|
ÐÑÑиÑлÑÐµÑ ÑазноÑÑÑ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð¾Ð². ÐÑи ÑÑом вÑоÑой диапазон, еÑли он ÑодеÑжиÑÑÑ Ð² пеÑвом, должен ÑаÑполагаÑÑÑÑ Ñак, ÑÑÐ¾Ð±Ñ Ð² ÑезÑлÑÑаÑе его вÑÑиÑÐ°Ð½Ð¸Ñ Ð¿Ð¾Ð»ÑÑалÑÑ Ð¾Ð´Ð¸Ð½ диапазон.
|
ТаблиÑа 9.59. ÐÑлÑÑидиапазоннÑе опеÑаÑоÑÑ
ÐпеÑаÑÐ¾Ñ ÐпиÑание ÐÑимеÑ(Ñ) |
|---|
ÐеÑвÑй мÑлÑÑидиапазон ÑодеÑÐ¶Ð¸Ñ Ð²ÑоÑой?
|
ÐÑлÑÑидиапазон ÑодеÑÐ¶Ð¸Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñй диапазон?
|
ÐÑлÑÑидиапазон ÑодеÑÐ¶Ð¸Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñй ÑлеменÑ?
|
Ðиапазон ÑодеÑÐ¶Ð¸Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñй мÑлÑÑидиапазон?
|
ÐеÑвÑй мÑлÑÑидиапазон ÑодеÑжиÑÑÑ Ð²Ð¾ вÑоÑом?
|
ÐÑлÑÑидиапазон ÑодеÑжиÑÑÑ Ð² диапазоне?
|
Ðиапазон ÑодеÑжиÑÑÑ Ð² мÑлÑÑидиапазоне?
|
ÐаданнÑй ÑÐ»ÐµÐ¼ÐµÐ½Ñ ÑодеÑжиÑÑÑ Ð² мÑлÑÑидиапазоне?
|
ÐÑлÑÑÐ¸Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð¿ÐµÑеÑекаÑÑÑÑ (Ñ Ð½Ð¸Ñ ÐµÑÑÑ Ð¾Ð±Ñие ÑлеменÑÑ)?
|
ÐÑлÑÑидиапазон пеÑеÑÐµÐºÐ°ÐµÑ Ð·Ð°Ð´Ð°Ð½Ð½Ñй диапазон?
|
Ðиапазон пеÑеÑÐµÐºÐ°ÐµÑ Ð·Ð°Ð´Ð°Ð½Ð½Ñй мÑлÑÑидиапазон?
|
ÐеÑвÑй мÑлÑÑидиапазон ÑаÑполагаеÑÑÑ ÑÑÑого Ñлева Ð¾Ñ Ð²ÑоÑого?
|
ÐÑлÑÑидиапазон ÑаÑполагаеÑÑÑ ÑÑÑого Ñлева Ð¾Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ диапазона?
|
Ðиапазон ÑаÑполагаеÑÑÑ ÑÑÑого Ñлева Ð¾Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ мÑлÑÑидиапазона?
|
ÐеÑвÑй мÑлÑÑидиапазон ÑаÑполагаеÑÑÑ ÑÑÑого ÑпÑава Ð¾Ñ Ð²ÑоÑого?
|
ÐÑлÑÑидиапазон ÑаÑполагаеÑÑÑ ÑÑÑого ÑпÑава Ð¾Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ диапазона?
|
Ðиапазон ÑаÑполагаеÑÑÑ ÑÑÑого ÑпÑава Ð¾Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ мÑлÑÑидиапазона?
|
ÐеÑвÑй мÑлÑÑидиапазон не пÑоÑÑиÑаеÑÑÑ Ð¿Ñавее вÑоÑого?
|
ÐÑлÑÑидиапазон не пÑоÑÑиÑаеÑÑÑ Ð¿Ñавее заданного диапазона?
|
Ðиапазон не пÑоÑÑиÑаеÑÑÑ Ð¿Ñавее заданного мÑлÑÑидиапазона?
|
ÐеÑвÑй мÑлÑÑидиапазон не пÑоÑÑиÑаеÑÑÑ Ð»ÐµÐ²ÐµÐµ вÑоÑого?
|
ÐÑлÑÑидиапазон не пÑоÑÑиÑаеÑÑÑ Ð»ÐµÐ²ÐµÐµ заданного диапазона?
|
Ðиапазон не пÑоÑÑиÑаеÑÑÑ Ð»ÐµÐ²ÐµÐµ заданного мÑлÑÑидиапазона?
|
ÐÑлÑÑÐ¸Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð¿ÑимÑкаÑÑ Ð´ÑÑг к дÑÑгÑ?
|
ÐÑлÑÑидиапазон пÑимÑÐºÐ°ÐµÑ Ðº Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð¼Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ?
|
Ðиапазон пÑимÑÐºÐ°ÐµÑ Ðº Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð¼Ñ Ð¼ÑлÑÑидиапазонÑ?
|
ÐÑÑиÑлÑÐµÑ Ð¾Ð±Ñединение мÑлÑÑидиапазонов. ÐÑлÑÑÐ¸Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð¼Ð¾Ð³ÑÑ Ð½Ðµ пеÑеÑекаÑÑÑÑ Ð¸ не пÑимÑкаÑÑ Ð´ÑÑг к дÑÑгÑ.
|
ÐÑÑиÑлÑÐµÑ Ð¿ÐµÑеÑеÑение мÑлÑÑидиапазонов.
|
ÐÑÑиÑлÑÐµÑ ÑазноÑÑÑ Ð¼ÑлÑÑидиапазонов.
|
ÐпеÑаÑоÑÑ Ñлева/ÑпÑава/пÑимÑÐºÐ°ÐµÑ Ð²Ñегда возвÑаÑаÑÑ false, еÑли один из диапазонов или мÑлÑÑидиапазонов пÑÑÑ; Ñо еÑÑÑ, ÑÑиÑаеÑÑÑ, ÑÑо пÑÑÑой диапазон Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð½Ðµ Ñлева и не ÑпÑава Ð¾Ñ ÐºÐ°ÐºÐ¾Ð³Ð¾-либо дÑÑгого диапазона.
РдÑÑÐ³Ð¸Ñ ÑлÑÑаÑÑ Ð¿ÑÑÑÑе Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð¸ мÑлÑÑÐ¸Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ ÑаÑÑмаÑÑиваÑÑÑÑ ÐºÐ°Ðº нÑлевой ÑлеменÑ: вÑÑ, ÑÑо обÑединÑеÑÑÑ Ñ Ð¿ÑÑÑÑм знаÑением, оÑÑаÑÑÑÑ Ð½ÐµÐ¸Ð·Ð¼ÐµÐ½Ð½Ñм. ÐÑе, Ð¾Ñ Ñего оÑнимаеÑÑÑ Ð¿ÑÑÑое знаÑение, оÑÑаÑÑÑÑ Ð½ÐµÐ¸Ð·Ð¼ÐµÐ½Ð½Ñм. ÐÑÑÑой мÑлÑÑидиапазон Ð¾Ð±Ð»Ð°Ð´Ð°ÐµÑ Ñеми же ÑвойÑÑвами, ÑÑо и пÑÑÑой диапазон. ÐаждÑй диапазон ÑодеÑÐ¶Ð¸Ñ Ð¿ÑÑÑой диапазон. ÐаждÑй мÑлÑÑидиапазон ÑодеÑÐ¶Ð¸Ñ ÑколÑко Ñгодно пÑÑÑÑÑ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð¾Ð².
ÐÑи вÑÑиÑлении опеÑаÑоÑов обÑÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¸ вÑÑиÑÐ°Ð½Ð¸Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð¾Ð² Ð²Ð¾Ð·Ð½Ð¸ÐºÐ½ÐµÑ Ð¾Ñибка, еÑли в ÑезÑлÑÑаÑе полÑÑаÑÑÑ Ð´Ð²Ð° непеÑеÑекаÑÑÐ¸Ñ ÑÑ Ð¿Ð¾Ð´Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð°, поÑколÑÐºÑ Ñакой ÑезÑлÑÑÐ°Ñ Ð½ÐµÐ»ÑÐ·Ñ Ð¿ÑедÑÑавиÑÑ Ð² виде диапазона. СÑÑеÑÑвÑÑÑ Ð¾ÑделÑнÑе опеÑаÑоÑÑ Ð´Ð»Ñ Ð¾Ð±ÑÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¸ вÑÑиÑаниÑ, коÑоÑÑе пÑинимаÑÑ Ð¼ÑлÑÑидиапазоннÑе паÑамеÑÑÑ Ð¸ возвÑаÑаÑÑ Ð¼ÑлÑÑидиапазон, и они не вÑзовÑÑ Ð¾ÑибкÑ, даже еÑли Ð¸Ñ Ð°ÑгÑменÑÑ Ð½Ðµ пеÑеÑекаÑÑÑÑ. ÐоÑÑомÑ, еÑли Ð²Ñ Ñ Ð¾ÑиÑе избежаÑÑ Ð¾Ñибок пÑи обÑединении или вÑÑиÑании диапазонов, когда могÑÑ Ð¿Ð¾Ð»ÑÑиÑÑÑÑ Ð½ÐµÐ¿ÐµÑеÑекаÑÑиеÑÑ Ð¿Ð¾Ð´Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ, ÑнаÑала пÑеобÑазÑйÑе Ð²Ñ Ð¾Ð´Ð½Ñе Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð² мÑлÑÑидиапазонÑ.
РТаблиÑе 9.57 пеÑеÑиÑÐ»ÐµÐ½Ñ ÑÑнкÑии, пÑедназнаÑеннÑе Ð´Ð»Ñ ÑабоÑÑ Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð½Ñми Ñипами. ФÑнкÑии, пÑедназнаÑеннÑе Ð´Ð»Ñ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ Ð¼ÑлÑÑидиапазоннÑми Ñипами, пÑÐ¸Ð²ÐµÐ´ÐµÐ½Ñ Ð² ТаблиÑе 9.61.
ТаблиÑа 9.60. ÐиапазоннÑе ÑÑнкÑии
ТаблиÑа 9.61. ÐÑлÑÑидиапазоннÑе ÑÑнкÑии
ÐÑли ÑÑнкÑиÑм lower_inc, upper_inc, lower_inf, upper_inf пеÑедаÑÑÑÑ Ð¿ÑÑÑой диапазон или мÑлÑÑидиапазон, они возвÑаÑаÑÑ false.