Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 4. Dva od petih
- Leta 1958 je podjetje ibm dalo na trg raˇcunalnik ibm 7070, ki je nadomestil predhodne
- modele raˇcunalnikov z elektronkami, saj je bil izdelan s tranzistorji in zato zmogljivejˇsi
- in energijsko manj potraten.
- Ker je bil model ibm 7070 namenjen poslovnim obdelavam, so bila ˇstevila v njem
- shranjena kot deset desetiˇskih ˇstevk, vsaka ˇstevka pa zapisana s petimi biti, skupaj torej
- 50 bitov (in dodatni predznak, s katerim pa se v tej nalogi ne bomo ukvarjali).
- Ceprav bi za zapis ˇstevke med 0 in 9 zadoˇsˇcali ˇstirje biti, so se izdelovalci zavedali ˇ
- moˇznosti napak pri hranjenju in obdelavi podatkov, zato so se odloˇcili za pet bitov in
- izmed vseh moˇznih 32 kombinacij izbrali deset takih, pri katerih velja, da ima vsaka
- veljavna desetiˇska ˇstevka natanko dva bita od petih postavljena na 1, ostali trije pa
- morajo biti 0. Ce se je med obdelavo kje pojavila nedovoljena kombinacija bitov, je bila ˇ
- javljena napaka.
- Tako kodiranje omogoˇca, da zaznamo vsako posamiˇcno napako (sprememba enega
- bita iz 1 v 0 ali obratno), lahko pa celo veˇc napak, ˇce so vse iste vrste (vse iz 0 v 1 ali
- pa vse iz 1 v 0).
- Tole je tabela, po kateri se pri ibm 7070 ˇstevila med 0 in 9 zakodirajo v petbitno
- kodo:
- 1 11000
- 2 10100
- 3 10010
- 4 01010
- 5 00110
- 6 10001
- 7 01001
- 8 00101
- 9 00011
- 0 01100
- Napiˇsi program, ki bo prebral eno vrstico z vhodne datoteke ali standardnega vhoda
- (kar ti je laˇzje), v kateri se nahaja zapis enega desetmestnega kodiranega ˇstevila. Vrstica
- vsebuje 50 takih znakov, ki so enice ali niˇcle (poleg njih so lahko v vrstici ˇse drugi
- znaki, na primer presledki, vendar vse take druge znake zanemarimo; vsega skupaj pa
- je vrstica dolga najveˇc 100 znakov), in predstavlja deset desetiˇskih ˇstevk. Program naj
- izpiˇse prebrano ˇstevilo s ˇstevkami med ”
- 0“ in ”
- 9“, morebitne neveljavne ˇstevke v ˇstevilu
- pa naj izpiˇse kot zvezdice.
- Primer vhodnih podatkov:
- 01a100 0110000110, 10100 10110 x 010 10 00110;;;;10001 00000 00011
- Pri tem primeru je rezultat:
- 0052*456*9
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement