Onkohan kukaan yrittänyt ratkaista osoitteesta http://www.eskimo.com/~miyaguch/power.html löytyvää tehtävää numero 18?
Jos saitte ratkaistua, oliko tehtävä mielestänne vaikea?
Tehtävän ratkaisemisessa ei saa ohjeiden mukaan käyttää tietokonetta apuna (mikä olisikin varsin helppoa).
Itse uskoisin ratkaisseeni tehtävän oikein, aikaa siihen kului n. 4 tuntia. En käyttänyt tietokonetta muuhun kuin tuloksen tarkistamiseen, ratkaisin tehtävän "geometrisesti".
Jos saitte ratkaistua, oliko tehtävä mielestänne vaikea?
Tehtävän ratkaisemisessa ei saa ohjeiden mukaan käyttää tietokonetta apuna (mikä olisikin varsin helppoa).
Itse uskoisin ratkaisseeni tehtävän oikein, aikaa siihen kului n. 4 tuntia. En käyttänyt tietokonetta muuhun kuin tuloksen tarkistamiseen, ratkaisin tehtävän "geometrisesti".
Vastaukset 28
Vanhimmat
Näytti kiinnostavalta tehtävältä, itse en ole ratkaissut. Näytä nyt Jonttu ja kerro täsmällinen vastaus, ei koodia eikä likiarvoa.
Näytä että et ole paskanpuhuja ja anna vastaus.
Se menee aika easysti. En kuitenkaan kerro ennen kuin tämä jonttu on saanut tilaisuuden. Muutenhan pilaisin Bhohoon odotukset.
..sama tehtävä kuin mitä se kolmiojuttukin:
aritmeettisen sarjan summa = suurimman ja pienimmän termin keskiarvo kerrottuna sarjan jäsenten lukumäärällä.
Eli, ((1 1000000)/2)*1000000=500000500000
test1: ((1 4)/2)*4=10
test2: ((1 5)/2)*5=15
Just juu...
-Jonttu-
Noin saat kyllä yhdessä kerroksessa olevien pallojen määrän, mutta kun piti laskea kaikkien miljoonan yhteen.
No, muut ehtivät jo antaa vastauksen.
..no sitten vastaus on yhden kerrokseen lukmäärän laskemisessa käytetyn funktion määrätty integraali.
Peruskoulussa ei opetettu integroimista, mutta uskoisin halutessani kykeneväni ratkaiseman myös tämän tehtävän.
Jonttu
En jaksanut tarkistaa, joten arvaukseni on tod.näk. väärin. Tehtävä tuntui aika helpolta, eli jotain jäi varmaan ottamatta huomioon.
Koska oikeaa vastausta ei ole vielä julkaistu, laitan tähän vain osan omasta vastauksestani (osa numeroista korvattu x:llä):
XXX6XX1XXXX7XXX0XX
-99.9-
Sama vastaus kuin minulla. Ilmeisesti tehtävä oli aika helppo, pilasit vähän iloani ;-) Varsinkin jos teit tehtävän sääntöjen mukaan, kuten varmasti teitkin.
Itse tulos ei varmaan ole mikään salaisuus, vaan lähinnä se, miten sen voi laskea laskematta yhteen kaikkien kerroksien palloja. Seuraavalla Java-koodilla pitäisi tulla oikea tulos.
// Java-koodi alkaa
// Lasketaan kaikki kerrokset yhteen
long layers = 1000000;
long total = 0;
long current = 0;
for (long i = 1; i
Mitä hemmetin javoja te kaikki oikein käytätte? Nykyajan pullamössösukupolvea?? Integroimalla saa koko roskan helposti. Tosin se on lähes sama asia kuin esitetty ohjelmanpätkä javalla, mutta tuntuu kuin matikka olisi luotu javasta eikä toisinpäin.
..että olen pullamössösukupolvea. En osaa matematiikkaa. Sekin vähä, mitä olen joskus osannut, on unohduksissa.
En täysin ymmärtänyt viimeistä lausetta, mutta ainakin itse pidän Javasta paljon enemmän :-)
Älä nyt kaikkia javan käyttäjäksi morkkaa:-) (En edes osaisi muuta kuin VB:tä...). Itse johdin pallojen määrälle seuraavan kaavan:
Jos kerroksia on x kappaletta, niin palloja on (x^3 3x^2 2x)/6 kappaletta. Vaikka x on 1000000, niin tuo on helppo ja nopea laskea kynällä ja paperilla.
-99.9-
Jos teille annetaan kynä ja paperia ja tuollainen tehtävä, ei teillä ole mahdolisuutta pyörittää koneessa koodia, joka tekee miljoonia silmukoita.
Jos olisin tehtävän laatija, voisin estää tämän laittamalla kerrosten lukumääräksi vaikka 10^100, mikä karsisi enimmät "uusavuttomat".
Sen sijaan tuo sarjan esittäminen polynomina antaa yleisen vastauksen.
Oma kaavani oli (((x 1) ^ 3) - (x 1)) / 6.
..nyt, kun on todistettu, että mä tein tehtävän oikein ja sä väärin niin etköhän ymmärrä jatkossa pitää pääsi kiinni. ;)
Samoin kävi muuten tolle "ÄO177":lle sen Java plugin-tehtävän kohdalla, joten johtopäätöksiä voidaan alkaa vetää myös muistakin esitetyistä väittämistä. ;)
-Jonttu-
Ei tässä ole vielä mitään tehty kuin harrastettu sirkuspellenä oloa.
Minkä sinä teit oikein?
Tuossa java-hommassa sait valita kielen, mutta kuka sanoi että saat valita tehtävän? Taisit valita jonkun etukäteen tekemän koodin. Ei uskota että teit tuon itse.
..mielenkiintoista, että et usko. Sen myönnän, että kyseinen koodi on väännetty ja aikaisemmin leikkiessäni Javan eri mahdollisuuksilla. Aikaa tuon tekemiseen meni jotain about parisen tuntia (alusta loppuun).
Myöntänet edes sen, että toteutus avaa aika villejä ajatuksia esim. kodinkoneiden ohjausterminaalin mahdollisesta toteutustavasta? Tietenkin sen ajonaikaisen käännöksen voisi jättää pois turhanpäiväisenä juttuna, kunhan kokeilin.
Jep, se pallo-pyramidin laskutehtävä meni multa väärin, myönnettäköön. Sen verran olen kuitenkin määrätyn integraalin syntymekanismiin tutustunut, että uskon pystyväni ratkaisemaan myös tehtävän jäljellä olevan osuuden. Oikeastaan mua ei paskaakaan kiinnosta uskooko porukat sitä tai ei, mutta sen vaan sanon, että matematiikan hallinta ei ole sama kuin äly.
Jonttu
Nyt, kun on todistettu, että sinä et kykene todellakaan erottamaan oikeaa ja väärää vastausta toisistaan (kuka ratkaisikaan oikein ja kuka väärin...), niin etköhän ymmärrä jatkossa pitää pääsi kiinni ;)
PS. Eikö olekin hieman noloa pullistella väärässä paikassa väärään aikaan ;)
-99.9-
Mitä v*****? Tehosekoittimessa java??? Buahahah. Kyllä se aika on vielä kaukana kun jääkaappi komentaa kansalaista kännykällä kauppaan ostamaan lisää ketsuppia.
Naura vaan, mutta noin se saadaan toimimaan kunnolla. Toinen harkinnan arvoinen tapa on käyttää Javan URLClassLoader-luokkaa, jolla käyttöliittymäsovellus voidaan ladata dynaamisesti kodinkonevalmistajan palvelimelta. Tässä mallissa kodinkone ilmoittaa versionumeronsa ja valmistajan palvelimen osoitteen. Molemmissa tavoissa on omat hyvät ja huonot puolensa, joten näiden kompinaatti voisi olla toimivin.
-Jonttu-
PS. Oletkos MS-poikia?
Tämä on tehtävä joka ratkeaa n. 5 sekunnissa. Tulos on 1000 000 (1000 001)/2
Väärin. Ehkä pitäisi käyttää tehtävän lukemiseen enemmän kuin 5 sekuntia.
"If there are exactly 1,000,000 layers, specify the total number of atoms in the entire crystal."
Siis miljoona kerrosta ja atomien KOKONAISmäärä koko kiteessä.
Miljoona kerrosta, jolloin atomien yhteismäärä on 1 2 3 4..... 1 000 000=1000 000 (1000 001)/2.
Joo...luin tehtävän uudelleen. Olet oikeassa, lasku on tuossa vaiheessa.
juu mä kans tulen mukaan tässä vaiheessa vaikka. jooko? mäkin olisin laskenut näin ja noin jne. hurraa. nyt voidaan kaikki kruunata itsemme mensan testin läpäisseiksi. jooko? miljoona plus kaks on miljoona kaks.
Mikä siinä nyt on niin vaikeaa käsittää?
Tuo kaavasi pitäisi paikkaansa, jos ensimmäisessä kerroksessa olisi 1 atomi, toisessa 2, kolmannessa 3 jne.
Mutta näin ei ole. Ensimmäisessä kerroksessa on 1 atomi, toisessa 3, kolmannessa 6, neljännessä 10 jne.
Ole hyvä, lue se tehtävä (vaikka keskustelu on jo kyllä siltä osin käyty...).
-99.9-
jatketaan laskua. Oikea vastaus
1000 002(1000 003)/2 -1
Otsikko kertoo kaiken.
1000 000 (1 000 001)/2 * 1 000 000 - 1000 000 *1000 001(2 000 001)/6 1 000 000*1000 001/2
Vielä kun jaksat suorittaa nuo laskutoimitukset (tehtävänannon mukaan kynällä ja paperilla tahi päässälaskuna, ei koneapuja...) ja kertoa tuloksen, niin päästään tästä piinasta. Tehtävässähän pyydetään, että "Give an exact answer, not an approximate one or a formula for making the calculation."
Nyt onneksi tuo pohja on kunnossa...
-99.9-