On olemassa helppoja laskutoimituksia kuten esim. " yhteenlaskun tulos: 11 2= ? " jota tämän tekstilaatikon alla udellaan tällä hetkellä. Tiedän että se on 13, joten en kysy sitä.
On olemassa myös hyvin vaikeita, luultavasti käytännössä mahdottomia, laskutoimituksia kuten esim. noin 180-bittisellä elliptisten käyrien kryptografian menetelmällä salakirjoitetun viestin avaus jos salainen avain on tuntematon (vaikka tunnetaankin muita yksityiskohtia ko. menetelmästä, kuten julkinen avain ja modulus).
On myös olemassa raskaahkoja laskutoimituksia jotka pystyy tekemään tietokoneella sopivalla ohjelmalla, mutta joita ei esim. tieteislaskimella jaksa tehdä vaikka tietäisikin tarkalleen miten ratkaisu periaatteessa tapahtuu.
Voisitteko mainita esimerkkejä laskutoimituksista joita ei esim. Windowsin tieteislaskimella pysty ratkaisemaan tai ei viitsi nähdä niin isoa vaivaa, mutta jotka ovat sopivalla ohjelmalla tietokoneella melko nopeasti ratkaistavissa?
On olemassa myös hyvin vaikeita, luultavasti käytännössä mahdottomia, laskutoimituksia kuten esim. noin 180-bittisellä elliptisten käyrien kryptografian menetelmällä salakirjoitetun viestin avaus jos salainen avain on tuntematon (vaikka tunnetaankin muita yksityiskohtia ko. menetelmästä, kuten julkinen avain ja modulus).
On myös olemassa raskaahkoja laskutoimituksia jotka pystyy tekemään tietokoneella sopivalla ohjelmalla, mutta joita ei esim. tieteislaskimella jaksa tehdä vaikka tietäisikin tarkalleen miten ratkaisu periaatteessa tapahtuu.
Voisitteko mainita esimerkkejä laskutoimituksista joita ei esim. Windowsin tieteislaskimella pysty ratkaisemaan tai ei viitsi nähdä niin isoa vaivaa, mutta jotka ovat sopivalla ohjelmalla tietokoneella melko nopeasti ratkaistavissa?
Vastaukset 7
Vanhimmat
Runsasta määrää iterointia vaativat tehtävät voisivat sopia tuohon kategoriaan.
Esimerkkinä mieleen tulee vaikkapa jonkin fraktaalin piirtäminen. Sinänsä yksinkertaista laskua joutuu iteroimaan tolkuttoman monta kertaa saadakseen nätin kuvion piirrettyä. Käsin tuota ei tekisi millään mutta tietokone suoriutuu siitä hetkessä.
Muita esimerkkejä voisi olla vaikkapa piin (tai vastaavan) desimaalien laskeminen, alkulukujen etsiminen jne. Tosin näiden osalta ei voine puhua tehtävän ratkaisemisesta, kun vaikkapa ne piin desimaalit tai alkuluvut ei koskaan lopu. Mutta vaikkapa tehtävä: "Laske piin 1000 ensimmäistä desimaalia." ratkennee tietokoneella kohtuuhelposti mutta voisi jäädä tieteislaskimella tekemättä.
Hemmetti kun oli muuten vaikea tuo alareunan tehtävä, 17 13. Kaksinumeroisia lukuja molemmat.
Esim. käänteismatriisin laskeminen vaikkapa 20x20 matriisista. Tietokone laskee 0,001sekunnissa ja ohjelma on yksinkertainen. Sen sijaan laskimeen noita lukuja ei jaksa naputella.,
Tai vielä helpompi, muodosta kertotaulu luvuista 1-100. Kertolaskuja tulisi reilu 5000, jaksatko naputella?
Mitä eroa on naputella 20×20-matriisii laskimeen ja tietokoneelle? Tietenkin jos laskin ei tuo suoraan matriiseja, niiden laskimen voi olla aika työlästä.
Tässä tapauksessa on aika kyseenalaista mitä "ero" yleensäkään tarkoittaa. Luulen, että sillä haetaan vain mitä laskin ei "tue suoraan", koska muutenhan varsinaisia laskentavoimallisia eroja ei ole. Vastaavasti kuin että kynällä ja paperilla saa laskettua samat asiat kuin tietokoneella noin teoriassa, mutta käytännössä esim. tiettyjen osittaisdifferentiaaliyhtälöiden ratkaisu käsin olisi.. työlästä, koska analyyttisia metodeja ei aina tunneta ja joudutaan turvautumaan numeerisiin ratkaisuihin eli numeronmurskaukseen.
Käänteismatriisin ottaminen ei ole laskutoimitus, sillä siinä on vain yksi input-parametri. Laskutoimituksessa input-parametrejä on kaksi, sillä laskutoimitus on kuvaus ExE->E, missä E on joukko.
Niin kuvaus on joukolta joukolle eli siinä on aina yksi parametri. Mainostamasi ExE -> E on siis kuvaus, jolla on yksi parametri esim. (x,y) ja tarkalleen ottaen on väärin merkitä esim. f(x,y) vaan pitäisi merkitä f((x,y)). Tätä vasten matriisin alkiot eivät tuota ongelmia sen kummemmin kuin vektoritkaan.
Laskin sopii melko lyhyiden lausekkeiden arvojen laskemiseen näppäilyvirheiden vuoksi. Silloinhan pitää useimmiten aloittaa alusta uudelleen.
Jos sama lauseke joudutaan kehittämään useampia kertoja, niin voidaan tietysti käyttää laskimen ohjelmointiominaisuuksia, jos osaa. Useimmiten tämä käy tietokoneella helpommin, kunhan siinä on sopiva ohjelmointikieli käytettävissä.
Varsinaisessa ammattimaisessa laskemisessa käytetään valmisohjelmia esimerkiksi yhtälöryhmien ratkaisuun. Mitä tulee matriisien kääntämiseen, niin se korvataan yhtäloryhmien ratkaisussa useimmiten kolmiohajotelmien käytöllä. Matemaattiset ohjelmistot ovat jo niin kehittyneet, että niitä ei kannata ohjelmoida itse muuten kuin urheilumielessä. Mutta niihinkin täytyy osata ohjelmoida sovelluksen omia lisäkkeitä (funktioiden laskemista yms.).