Skaitļi dažādās lomās

Skaitļi dažādās lomās
Vienkāršākie ir naturālie skaitļi: 0,1,2,utt. (programmēšanā arī 0 uzskata par naturālu skaitli) – tie raksturo elementu skaitu kādā apkopojumā, piemēram kaķu skaitu tumšā istabā. Veselie skaitļi bez naturālajiem satur arī negatīvos skaitļus -1,-2, utt., bet daļskaitļi, gan pozitīvie, gan negatīvie, satur veselo un daļveida daļu, piemēram 3.14 (programmēšanā daļveida daļu atdala ar punktu, nevis ar komatu).
Skaitļi bieži saistās arī ar mērvienībām, piemēram 1.0in = 2.56cm (viena colla ir 2.56 centimetri). Reizēm skaitlis ir attiecība, piemēram, nogrieznis AB ir 75% no nogriežņa AC, nozīmē, ka AB/AC=0.75. (Procentveida skaitļus pārveido par parastiem skaitļiem, izdalot ar 100 un tie parasti izsaka kādu attiecību).
Romiešu pieraksts
Romiešu stilā dokumentos mēdz pierakstīt kārtas skaitļus. Tie norāda vai elements ir pirmais, otrais, utt. (kārtas skaitļi tātad sākas nevis ar 0, bet ar 1). To pierakstīšanai izmanto sekojošus simbolus:
I – viens V – pieci
X – desmit L – piecdesmit
C – simts D – pieci simti
M – tūkstotis
Citus skaitļus pieraksta, izmantojot šos simbolus līdzīgi kā ar 1, 5, 10, utml. santīmu monētām var nomaksāt jebkuru naudas summu. Tādējādi:
I – viens X – desmit C – simts
II – divi XX – divdesmit CC – divi simti
III – trīs XXX – trīsdesmit CCC – trīs simti
IV – četri XL – četrdesmit CD – četri simti
V – pieci L – piecdesmit D – pieci simti
VI – seši LX – sešdesmit DC – seši simti
VII – septiņi LXX – septiņdesmit DCC – septiņi simti
VIII – astoņi LXXX – astoņdesmit DCCC – astoņi simti
IX – deviņi XC – deviņdesmit CM – deviņi simti
Citus skaitļus darina, savienojot tūkstošus, simtus, desmitus un vienus. Piemēram, skaitli 1985 raksta: MCMLXXXV. Skaitļus, kas lielāki par 5000 ar romiešu cipariem nemēdz pierakstīt.
Pozicionālās skaitīšanas sistēmas
Atšķirībā no romiešu skaitīšanas sistēmas, decimālajā sistēmā par pamatelementiem izvēlas desmitnieka pakāpes: 1 (viens), 10 (desmit), 100 (simts), utt., bet visus pārējos skaitļus veido, saskaitot noteiktā secībā šos pamatelementus, piemēram,
1985 = 1*1000 + 9*100 + 8*10 + 5*1 = (viens tūkstotis + deviņi simti + astoņi desmiti + pieci vieni)
Šajā sistēmā neviens elements nav jāņem vairāk kā deviņas reizes, jo, piemēram, desmit simtnieku vietā var pieskaitīt vienu tūkstoti, tādēļ ikviena skaitļa decimālai pierakstīšanai pietiek ar cipariem 0,1,2,3,4,5,6,7,8,9.
Analoģiski par pamatelementiem var izvēlēties arī skaitļa 2 pakāpes, kuras pieraksta šādi: 1 (viens), 10 (divi), 100 (četri), 1000 (astoņi), utt. Katru citu skaitli iegūst, saskaitot šos pamatelementus, piemēram,
1011 = 1000 + 10 + 1 = astoņi + divi + viens = vienpadsmit
Šoreiz pietiek ar cipariem 0,1, jo, piemēram, divi divnieki ir tas pats, kas viens četrinieks.
Šajā vietā dokumentā iekļauts rīks, kurš pārveido skaitļa bināro (divnieku) pierakstu par decimālo un atpakaļ:
Daļskaitļu pierakstīšanai decimālajā sistēmā lieto papildus vēl šādus pamatelementus: 0.1 (desmitdaļa), 0.01 (simtdaļa), 0.001 (tūkstošdaļa). Piemēram,
3.14 = 3*1 + 1*0.1 + 4*0.01 = trīs vieni + viena desmitdaļa + četras simtdaļas
Ievērojiet, ka programmēšanas valodās pirms desmitdaļu cipara raksta punktu (.), nevis komatu.
Heksadecimālā skaitīšanas sistema
Datora atmiņa sastāv no bitiem, t.i. maziem slēdzīšiem, kas var atrasties divos stāvokļos: “0” un “1”. Tādēļ viss, ko dators var atcerēties, ir izsakāms ar skaitli binārajā pierakstā. Piemeram, skaitlis 1985 izsakās 11111000001. Datoram tas ir ērti, bet cilvēkiem tik gars pieraksts nepatīk. Tādēļ divnieku ciparus mēdz grupēt pa četri. Skaitļa “1985” pierakstam tas izskatītos šādi: 0111_1100_0001. Iegūtās četrciparu grupas apzīmē šādi:
0000 – 0 0100 – 4 1000 – 8 1100 – c
0001 – 1 0101 – 5 1001 – 9 1101 – d
0010 – 2 0110 – 6 1010 – a 1110 – e
0011 – 3 0111 – 7 1011 – b 1111 – f
Iegūto rezultātu sauc par heksadecimālo pierakstu, piemēram, skaitlim ar decimālo pierakstu 1985, heksadecimālais pieraksts ir 7c1. Heksadecimālo pierakstu var uzskatīt kā saīsinājumu pierakstam divnieku skaitīšanas sistēmā, tādējādi 7c1 ir divnieku pieraksta 0111_1100_0001 ērtāks ekvivalents. Heksadecimālo pierakstu var uzskatīt arī kā patstāvīgu skaitīšanas sistēmu ar bāzi 16 (“heksa” ir latīņu aizguvums, kas nozīmē seši). Sešpadsmitnieku sistēmas cipari ir mums jau pazīstamie simboli {0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f}, kur a ir desmit, …, f ir piecpadsmit. Heksadecimālās sistēmas popularitāti nosaka fakts, ka vienā baita parasti ir astoņi biti, tādēļ divi heksadecimālie cipari atbilst astoņiem bitiem, jeb vienam baitam.
Aritmētiskās darbības
Saskaitīšana, atņemšana, reizināšana un dalīšana ir definētas gan veseliem, gan daļskaitļiem. Saskaitot, atņemot un reizinot savā starpā veselus skaitļus, rezultāts arī ir vesels skaitlis, tāpat dalot veselus skaitļus, kas izdalāmi bez atlikuma. Visos citos gadījumos rezultāts ir daļskaitlis. Pat tad, ja daļveida daļa pazūd, piemēram, 3.14+2.86=6.0, rezultātu programmēšanā parasti uzskata par daļskaitli, jo daļveida daļas pazušana tādos gadījumos mēdz būt nejaušība, kuru radījusi daļskaitļu noapaļošana.
Programmēšanā lieto divu veidu kāpināšanu. Kāpināšana ar atkārtotu reizināšanu vai dalīšanu:
an = a*a*…*a (n reizes)
a-n = 1/(a*a*…*a).
Šeit nepieciešams, lai kāpinātājs n (vai -n) būtu vesels skaitlis.
Kāpināšana izteikta ar eksponentes un logaritma funkcijām:
ab = Exp(b*Ln(a)).
Tai vajag, lai pakāpes bāze (t.i. a) būtu pozitīva. Pārskatu par Exp(x), Ln(x) un citām funkcijām var atrast nodaļā
Lai varētu veikt veselo skaitļu dalīšanu, ir vēl divas aritmētiskas darbības MOD un DIV. Izteiksme “a MOD b” nozīmē atlikumu dalot a ar b, un “a DIV b” nozīmē dalījuma veselo daļu. Piemēram:
17MOD3 = 2
17DIV3 = 5
-17MOD3 = 1
-17DIV3 = -6
Programmēšanas valodās bieži ir pieejama operācija %, kas ir līdzīga MOD, bet citādi definēta, dalot negatīvos skaitļus ar pozitīvajiem. “Atlikumi” tad sanāk negatīvi. Darbību DIV var izteikt ar MOD:
a DIV b = (a – a MOD b) / b.
Kopsavilkums
1. Skaitļus datora atmiņā glabā binārajā pierakstā. Programmēšanas valodās cilvēka ērtību dēļ ļauj tos rakstīt decimālajā sistēmā.
2. Skaitļu binārais pieraksts ir vairākas reizes garāks par decimālo, ja nepieciešams īsi pierakstīt bitu virknes, lieto heksadecimālo pierakstu. Heksadecimālajā pierakstā bitus grupē pa 4 un apzīmē bitu četriniekus ar desmit cipariem un pirmajiem sešiem latīņu alfabēta burtiem.
3. Romiešu pierakstu lieto uzskaitot saraksta apakšpunktus, numurējot nodaļas grāmatās un citur, kur jāuzskaita pēc kārtas ne pārāk daudzi elementi. Romiešu pieraksta (I,II,III,IV,…) vietā mēdz lietot arī kārtas skaitļu vārdus (pirmkārt, otrkārt,… vai pirmais, otrais,…), arābu ciparus (1), 2), 3),… jeb 1., 2., 3., ), vai latīņu vai grieķu burtus (a), b), c),…).
4. Aritmētiskās darbības atšķiras atkarībā no tā vai tās lieto veseliem skaitļiem vai daļskaitļiem. Ja kaut viens darbībā iesaistītais skaitlis ir daļskaitlis, arī rezultāts ir daļskaitlis.
5. Veselo skaitļu dalīšanai lieto darbības DIV (dalījuma veselā daļa) un MOD (atlikums).
Jautājumi atkārtošanai
1. Kāda ir heksadecimālā pieraksta cipara lielākā iespējamā vērtība, kā to pieraksta?
2. Ar kādiem simboliem romiešu pierakstā apzīme skaitļus 1,5,10,50,100,500,1000?
3. Cik dažādus skaitļus var glabāt mašīnas atmiņas 32 bitos? Aptuveni novērtēt iegūto izteiksmi.
Piemēri
1. Pierakstīt bināri un heksadecimāli skaitļus 11, 125, 343.
2. Saskaitīt skaitļus izmantojot tikai romiešu pierakstu starprezultātu un galaiznākuma attēlošanai: CMLXXXIX+CCCXVII.
3. Uzrakstīt izteiksmi priekš a MOD b, izmantojot tikai %, moduli un četras aritmētiskās darbības tā, lai tā pieņemtu pareizas vērtības arī negatīviem a.