Što su za vas okrugli brojevi?

programiranje

Nešto petljam po nekoj bazi i zapela su mi za oko neka tekstualna polja malo većih dužina. Projektant baze je procjenjivao koliko će znakova biti potrebno i zaokruživao te brojeve. Npr. neka napomena je dužine 500. To je lijepi okrugli broj u dekadskom brojevnom sustavu. U malo pomaknutom pogledu na svijet, iz programerske vizure, to nije okrugli broj. Okrugli broj je u ovom slučaju 512 (tj. 1000000000). Ja sam se tijekom godina u ovom poslu naviknuo zaokruživati brojeve prema binarnom sustavu. To je u drevnom informatičkom vremenu imalo smisla i zbog toga jer je trebalo svuda štedjeti prostor, a maksimalni mogući prostor obično je bio u vezi s nekom potencijom broja 2.

Tako da su meni okrugli brojevi postali oni koji su potencija broja 2. 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048.

Zgodni su i okrugli brojevi iz oktalnog brojevnog sustava. 8, 16, 24, 32, 40, 48, 56, 64.

Dekadski okrugli broj je second class citizen u svijetu računala. ;-)



Komentari

29. kolovoza 2007. 11:07

Eh... na potencije broja 2... hoćeš reći da ako sjedneš na ručak i račun ti dođe na 97 kuna... ti to zaokružiš ne na 100, već 128 kn? :-))

29. kolovoza 2007. 11:28

da ti racun bude 101 kn da li bi ga ti zaokruzio na 1000 kn? jer to je prva iduca (veca) potencija broja 10.... kao sto je prva potencija broja 2 veca od 97 upravo 128 ne usporedjivati kruske i jabuke ;-) (potencije baze i brojeve koji to nisu)

ako definiras u jednom sustavu sto je zaokruzivanje, onda to treba konzistentno provoditi i u drugim sustavima, else je besmislica ako se hoces furati na potencije broja 2, onda se furaj i na potencije broja 10 :oP

ako zelis 97 zaokruziti na 100 i tu analogiju provesti u sustavu s bazom 2 onda bi to islo npr ovako: 1. definirati zaokruzivanje - npr - da broj bude djeljiv sa bazom u slucaju s bazom 2 to znaci daje broj paran

sto u tvom primjeru daje napojnicu od 1kn :oP tj 97 zaokruzen na 'prvi veci' u smislu napojnice je 98

i tko onda gubi? :oP

29. kolovoza 2007. 12:02

U tekstu je riječ o programerima i o definiciji veličine nekog podatkovnog niza, a ne o stvarnom životu. :-)

Vaši primjeri su primjenljivi u svijetu ljudi gdje su osnovne novčane jedinice okrugli dekadski brojevi.

U svijetu računala vladaju neki drugi zakoni. Koliko iznosi 1Kb? 1000 ili 1024 byteova? Koliko znakova stane u 1MB? 1000000 ili 1048576? Ili da se malo smanjimo. Byte može imati maksimalnu vrijednost 255. Nije ni 200 (ostane mu još neiskorištenog prostora) ni 300 (ne stane u byte).

Propustili ste zadnju rečenicu: Dekadski okrugli broj je .

30. kolovoza 2007. 00:53

ja ovo za racunala znam, samo sam htjela pojasniti nelogicnost/nekonzistentnost u zakljucivanju by Bez!Komentara ;-)

31. kolovoza 2007. 22:01

Razlika između programera početnika i iskusnog programere jest što početnik misli da kilobajt ima 1000 bajta, dok iskusni programer misli da kilometar ima 1024 metra. ;)