Заокруживање реалних бројева
Три најчешће коришћена начина заокруживања реалног броја x су:
⌊x⌋ – заокруживање наниже, тј. на највећи цео број који је мањи или једнак од x. У језику Пајтон ово заокруживање врши се функцијом
math.floor
.⌈x⌉ – заокруживање навише, тј. на најмањи цео број који је већи или једнак од x. У језику Пајтон ово заокруживање врши се функцијом
math.ceil
.заокруживање на цео број који је најближи броју x. У језику Пајтон ово заокруживање врши се функцијом
round
. У случају када је реални број тачно између два цела броја (нпр.3.5
), различити програмски језици користе различита правила о заокруживању. У језику Пајтон користи се такозвано правлио парне цифре. Оно гласи да у случају када је реалан број налази тачно између два цела броја, заокруживање се врши тако да цифра јединица буде парна. Тако је на примерround(4.5) == 4
, аround(5.5) == 6
. Слично,round(-4.5) == -4
, аround(-5.5) == -6
.
Важе и следећа тврђења.
Најмањи цео број строго већи од броја x једнак ⌊x⌋+1.
Највећи цео број строго мањи од броја x једнак ⌈x⌉−1.
Докажимо прво тврђење и формално. Ако је y=⌊x⌋, тада је y≤x<y+1. Зато је y+1=⌊x⌋+1 најмањи цео број који је строго већи од x (y, који је први број мањи од њега, није такав). Друго тврђење се доказује веома слично.
Заокруживање користимо да бисмо нашли целобројна решења неких неједначина. Ако су n и k позитивни бројеви, тада важе следећа тврђења.
Највећи цео број x такав да је x⋅k≤n једнак је x=⌊nk⌋.
Најмањи цео број x такав да је x⋅k≥n једнак је x=⌈nk⌉.
Најмањи цео број x такав да је x⋅k>n једнак је x=⌊nk⌋+1
Највећи цео број x такав да је x⋅k<n једнак је x=⌈nk⌉−1.
Докажимо формално прво тврђење. По дефиницији важи да је ⌊a⌋=b акко је b≤a<b+1. Докажимо да је ⌊nk⌋ највећи број цео такав да помножен бројем k даје вредност мању или једнаку од n. Ако је x=⌊nk⌋, тада важи да је x≤nk<x+1. Зато је x⋅k≤n<(x+1)⋅k и x=⌊nk⌋ је заиста највећи број такав да је x⋅k≤n.
Докажимо формално и друго тврђење. По дефиницији важи да је ⌈a⌉=b акко је b−1<a≤b. Зато, ако је x=⌈nk⌉ тада је x−1<nk≤x. Зато је (x−1)⋅k<n≤x⋅k, па је x=⌈nk⌉ заиста најмањи цео број такав да важи x⋅k≥n.
И остала тврђења се доказују на сличан начин.
Касније ћемо показати да ако су n и k природни бројеви, тада се заокруживање њиховог количника може урадити и само помоћу целобројне аритметике (види задатке Поклони и Лифт).