Hogyan lehet két változó értékét megcserélni új változó bevezetése nélkül? (rejtvény)
Kérlek, mutasd meg,hogyan ábrázolod te az 1/3 értékét 3 byte-on.
A gép kettes számrendszerben számol, csak azt érti. A lebegőpontos számábrázolás lényege, hogy van egy mantisszád, ami egy bináris reprezentáció, pl:
10010101
Ez a bináris szám a 149 megfelelője. A számhoz tartozik viszont egy karakterisztika is, ami meghatározza, hogy a kettő hanyadik hatványával toljuk el a számot, azaz a számban hol lesz a 'kettedesvessző'. Például ha a karakterisztika -2, azt így kell elképzelni:
100101,01
Ezesetben ez 37 egész és 1/4, azaz 37,25. Ahogy a 0-től balra levő számok rendre 2^1, 2^2, 2^3, stb-t jelölnek, úgy a 0-tól jobbra 2^-1, 2^-2, és így tovább. És az a nagy büdös helyzet, hogy akármilyen kettedes mélységig mész, nem fogod tudni a 0,3 értékét előállítani, legfeljebb tetszőlegesen megközelíteni.
Aztán hogy számolsz vele?
Az 1/3 + 0.3-at eltárolod stringbe úgy hogy 19/30? A számitógép nem igy működik. Nézz utánna a lebegőpontos számok bináris számábrázolásának. Azért találták ki, és azért működik igy, mert igy lehet egyszerűen műveleteket végrehajtani. A számitógép általában nem arra van, hogy csak eltároljuk az értéket és kiirjuk vmikor.
Lehet neked újdonság volt ez a számcserés "trükk", de szerintem aki valamelyest jobban ért programozáshoz, annak ez nem jelent újat. Ahogy az első is rávágta. Azért nem fejtette ki, mert ez egy közismert dolog.
Egy gépen - jobb esetben van operációs rendszer.
1/3 az a 3 jel ascii kódjának megfelelő 24 db vagy 0 vagy 1-es. igy tárolható pl. 3 bájton.
ha van operációs rendszer a gépen akkor képes értelmezni. üres gép azonban semmit se képes értelmezni. még a te megoldásodat se.
ez mindenkinek újdonság volt amikor először hallott róla. ahogy minden más is amiről addig nem hallott. úgy látom van némi felfogásbeli gondod ha azt hiszed van olyasmi ami valakinek sose volt újdonság.
az meg hogy valamivel könnyű számolni mit sem ér, ha végtelen nagyságú helyen lehetne csak tárolni. többet ér egy nehezen használható, de működtethető dolog, mint egy könnyen használható, de nem működő elképzelés.
"Azért nem fejtette ki, mert ez egy közismert dolog."
Ennek nincs jelentősége. Az is közismert dolog, hogy aki dolgozik az pénzt keres. Mégis csak az fog pénzt kapni aki el is végzi a munkát. Aki csak tudja ezt a közismert dolgot, de nem dolgozik, az nem kap pénzt.
#34 Remek, el tudod tárolni a karakterkódját. És számolni hogy fogsz vele? Mert a karakterkódnak semmi köze a szám értékéhez, ilyen módon egy összeadást sem fogsz tudni elvégezni.
És megnyugtatlak, egy számot sem tárolnak végtelen tárhelyen. De mivel a pontos értékét csak úgy lehet, ezért egy nagyon közeli becslésével dolgoznak.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!