Vaikea(?) matemaattinen todistustehtävä!
Vaikea(?) matemaattinen todistustehtävä!
klo 10:44 | 8.12.2007
"Yksi ynnä yksi ei olekaan kaksi, kun oikein tarkasti laskemme sen"(lauloi Ella Lahtinen - hellu)
Eli mitä se on? 1+1=11? Näin luuli tosinaan ainakin tietääkseni naapuri Kimmo!
Mutt ratkaisu:
1+1 = 1+1 tietysti... Ei sen tarvi mihkään muuttua!
Isi ja äiti on ainakin joskus luulleet että toi on yli 10. Tais ainakin ne Lestadiolaiset...
Punatulkulla on punainen maha.
Kunhan yritän joskus olla asiallinen...
Boolen algebrassa 1+1=1, ihan oikeasti, eikä sulla oo tuota tapausta äänestysvaihtoehdoissasi.
Joo se unohtui, mutta siinäkin: 1+1 = 1+1!, minne se yksi 1 lähtee lepattaan....
No tietysti 1 or 1 =1 , 1 or 0 =1, 0 or 1 = 1, 0 or 0 =0
Ja kertolasku: 1*1(and)=1 muut yhdistelmät nollia
No lisätäänkö se sinne - jos pystyy...
Kyllä se naapurisi Kimmo oli myös tavallaan oikeassa, koska läpeensä optimoiduissa C/assembler sovelluksissa moniulotteisia taulukoita käsitellään raa'asti yksiulotteisina, ja osoittimet niihin muodostetaan naapurisi Kimmon esittämällä tavalla.
Esim. taulukko X[2][2] saatetaan yksiulotteiseksi X'[2*2], johon sitten tuolla mainitsemallasi 1+1=11 tapauksella toimitetaan käytännössä:
1+1 = 1+(1<<1) = 11 = akutelli osoitin taulukon X' alkioon.
Toki optimoinnin tulos alkaa konkreettisesti erottumaan vasta huomattavasti monisyisemmillä taulukoilla, esim;
F[2][2][4][4][16][4][16], josta seuraisi vastaavasti 16-bittinen yksiulotteinen osoitin F'-taulukkoon tehokkaasti bittisiiroilla ynnättynä.
11-1-1=1 jos haluaa vähän venyttää ideaa...
Tuossa ei kylläkään ollut mitään venytystä, koska tulos paljastaa suoraan kysymyksessä olevan 2-kantaisen binäärijärjestelmän. Ei muuta kuin kynä ja vihko esiin, ja jotain omaperäisempää...kiitos.