23 resultados para lente pericentrica, calibrazione ottica Python, OpenCV
em Doria (National Library of Finland DSpace Services) - National Library of Finland, Finland
Resumo:
Tämä kandidaatintyö tutkii tietotekniikan perusopetuksessa keskeisen aiheen,ohjelmoinnin, alkeisopetusta ja siihen liittyviä ongelmia. Työssä perehdytään ohjelmoinnin perusopetusmenetelmiin ja opetuksen lähestymistapoihin, sekä ratkaisuihin, joilla opetusta voidaan tehostaa. Näitä ratkaisuja työssä ovat mm. ohjelmointikielen valinta, käytettävän kehitysympäristön löytäminen sekä kurssia tukevien opetusapuvälineiden etsiminen. Lisäksi kurssin läpivientiin liittyvien toimintojen, kuten harjoitusten ja mahdollisten viikkotehtävien valinta kuuluu osaksitätä työtä. Työ itsessään lähestyy aihetta tutkimalla Pythonin soveltuvuutta ohjelmoinnin alkeisopetukseen mm. vertailemalla sitä muihin olemassa oleviin yleisiin opetuskieliin, kuten C, C++ tai Java. Se tarkastelee kielen hyviä ja huonoja puolia, sekä tutkii, voidaanko Pythonia hyödyntää luontevasti pääasiallisena opetuskielenä. Lisäksi työ perehtyy siihen, mitä kaikkea kurssilla tulisi opettaa, sekä siihen, kuinka kurssin läpivienti olisi tehokkainta toteuttaa ja minkälaiset tekniset puitteet kurssin toteuttamista varten olisi järkevää valita.
Resumo:
Python -ohjelmointiopas sisältää perustietoa ohjelmoinnista yleisesti sekä esittelee yksinkertaisia perusrakenteita, joiden pohjalta myös ohjelmoinnista mitään tietämätön ihminen voi luontevasti siirtyä ohjelmoinnin pariin. Opas on suunniteltu siten, että sen käyttäjän ei tarvitse osata etukäteen ohjelmoida, opas aloittaa käyttöympäristön asennuksesta, siihen tutustumisesta ja jatkaa siitä ohjelmointikeskeisimpiin aiheisiin.
Resumo:
Piano
Resumo:
Soitinnus: orkesteri.
Resumo:
Tässä tutkielmassa suunnitellaan lukion kolmannen vuoden opiskelijoille tarkoitettu syventävä kurssi, jossa opiskellaan ohjelmoinnin perusteita ja matemaattista ohjelmointia Python-kielellä. Tutkielma on laadittu siten, että sitä voidaan käyttää kurssin oppimateriaalina. Kurssin ensimmäiset oppitunnit käytetään ohjelmoinnin perustietojen opiskeluun. Tämän jälkeen kurssi painottuu algoritmisen ajattelun ja ohjelmointitaitojen kehittämiseen useita matemaattisia ohjelmia kirjoittamalla. Tutkielmaan on kerätty monipuolisesti lukion pitkän matematiikan oppimäärään sisältyviä menetelmiä ja tehtäviä, joita on kätevää ratkaista ohjelmoimalla. Näiden menetelmien ja tehtävien ohjelmointia havainnollistetaan tutkielmassa useiden esimerkkien avulla. Jokaisen matematiikan aihealueen yhteydessä on tarkoitus oppia jokin uusi asia ohjelmoinnista tai syventää jo opittujen asioiden osaamista. Tutkielma sisältää myös 50 harjoitustehtävää kurssin eri aihealueilta sekä lisämateriaalina lyhyen johdatuksen pelien ohjelmointiin ja täydennystä numeerisiin menetelmiin. Tutkielmassa suunnitellulla kurssilla käytettäväksi ohjelmointikieleksi on valittu Python, sillä Pythonin yksinkertainen ja selkeä syntaksi helpottaa huomattavasti aloittelijoiden ohjelmoinnin oppimista. Lisäksi Python-tulkki on ladattavissa Internetistä ilmaiseksi.
Resumo:
Tässä kandidaatintyössä suunnitellaan ja toteutetaan regressiotestaus- ja ylläpitotyökalu Ohjelmoinnin perusteet -kurssin Python-ohjelmointitehtäville. Työkalun on tarkoitus auttaa kurssin vastuuhenkilöitä selvittämään kurssilla käytettyjen harjoitustehtävien esimerkkiratkaisujen toimivuus Python-versiossa, jota kurssilla aiotaan käyttää ohjelmointiympäristönä seuraavana vuonna, ja helpottaa harjoitusmateriaalin yhdenmukaisuuden varmistamista silloin kun Python-versiota vaihdetaan tai materiaaliin tehdään muutoksia. Työssä tutkitaan, miten tarkoitukseen sopiva yleispätevä testaustyökalu voidaan kehittää, mitä seikkoja sen suunnittelussa on otettava huomioon ja mitä ongelmia kehittämiseen liittyy. Yleispätevän testaustyökalun kehittäminen osoittautui hankalaksi, vaikka testattavat ohjelmat ovat yksinkertaisia. Harjoitusmateriaaliin kuuluneiden yli 50 ohjelman testaamisessa tarvittavia tiedostoja oli yhteensä hyvin suuri määrä, ja niiden käsittelemiseksi työkalussa ja sen ulkopuolella oli vaikeaa valita optimaalista hakemistorakennetta. Lisäksi joidenkin testattavien ohjelmien havaittiin vaativan testauksessa muista poikkeavia lisätoimenpiteitä, jotka päätettiin jättää toteuttamatta työn puitteissa. Työn toivottu tulos jäi siten osittain saavuttamatta. Tuloksena syntyi kuitenkin työkalu, jolla voidaan ajaa 93 % nykyisistä esimerkkiratkaisuista määritellyillä testisyötteillä halutussa Python -ympäristössä ja saada tiedot ohjelmien toimivuudesta sekä niiden tuottamien tulosteiden täsmäävyydestä esimerkkitulosteisiin.
Resumo:
Ohjelmointitaito on asia, jonka oppimisesta ja opettamisesta voidaan olla montaa mieltä, eikä yhtä oikeaa tapaa toteuttaa ohjelmoinnin opetusta tunnu olevan olemassa. Se on kuitenkin selvää, että jotkin menetelmät ja työkalut tuntuvat olevan parempia kuin toiset. Lukuvuoden 2005-2006 päätteeksi Lappeenrannan teknillinen yliopisto päätti päivittää ohjelmoinnin perusopetusta, ja kokeili siirtymistä Python-ohjelmointikieleen ohjelmoinnin alkeiskursseilla. Koska kurssin varsinaiset muutokset keskittyivät tekniseen infrastruktuuriin, tutustuttiin alustavassa kirjallisuustutkimuksessa ensin erilaisiin lähestymistapoihin,aiempiin tapauksiin sekä mielekkäiden työkalujen löytämiseen. Tässä diplomityössä perehdytään ohjelmoinnin opetuksen työkaluihin sekä erityisesti Python-ohjelmointikielen hyödyntämiseen ohjelmoinnin perusopetuksessa. Diplomityö esittelee useita lähestymistapoja sekä keskittyy tutkimaan Pythonin soveltuvuutta alkeisopetuksen käyttötarkoituksiin. Diplomityö tutustuu myös Lappeenrannassa järjestetyn ohjelmoinnin perusteiden kurssin tuloksiin, ja analysoi sitä, pystyikö Python-pohjainen kurssi toteuttamaan teknisen yliopiston sille asettamat vaatimukset. Lopuksi aineistosta analysoidaan jatkotutkimuksen tarpeita sekä pyritään löytämään ne osa-alueet, joita näissä jatkotutkimuksissa tulisi vielä kehittää.
Resumo:
Ohjelmiston kehitystyökalut käyttävät infromaatiota kehittäjän tuottamasta lähdekoodista. Informaatiota hyödynnetään ohjelmistoprojektin eri vaiheissa ja eri tarkoituksissa. Moderneissa ohjelmistoprojekteissa käytetyn informaation määrä voi kasvaa erittäin suureksi. Ohjelmistotyökaluilla on omat informaatiomallinsa ja käyttömekanisminsa. Informaation määrä sekä erilliset työkaluinformaatiomallit tekevät erittäin hankalaksi rakentaa joustavaa työkaluympäristöä, erityisesti ongelma-aluekohtaiseen ohjelmiston kehitysprosessiin. Tässä työssä on analysoitu perusinformaatiometamalleja Unified Modeling language kielestä, Python ohjelmointikielestä ja C++ ohjelmointikielestä. Metainformaation taso on rajoitettu rakenteelliselle tasolle. Ajettavat rakenteet on jätetty pois. ModelBase metamalli on yhdistetty olemassa olevista analysoiduista metamalleista. Tätä metamallia voidaan käyttää tulevaisuudessa ohjelmistotyökalujen kehitykseen.
Resumo:
Programming and mathematics are core areas of computer science (CS) and consequently also important parts of CS education. Introductory instruction in these two topics is, however, not without problems. Studies show that CS students find programming difficult to learn and that teaching mathematical topics to CS novices is challenging. One reason for the latter is the disconnection between mathematics and programming found in many CS curricula, which results in students not seeing the relevance of the subject for their studies. In addition, reports indicate that students' mathematical capability and maturity levels are dropping. The challenges faced when teaching mathematics and programming at CS departments can also be traced back to gaps in students' prior education. In Finland the high school curriculum does not include CS as a subject; instead, focus is on learning to use the computer and its applications as tools. Similarly, many of the mathematics courses emphasize application of formulas, while logic, formalisms and proofs, which are important in CS, are avoided. Consequently, high school graduates are not well prepared for studies in CS. Motivated by these challenges, the goal of the present work is to describe new approaches to teaching mathematics and programming aimed at addressing these issues: Structured derivations is a logic-based approach to teaching mathematics, where formalisms and justifications are made explicit. The aim is to help students become better at communicating their reasoning using mathematical language and logical notation at the same time as they become more confident with formalisms. The Python programming language was originally designed with education in mind, and has a simple syntax compared to many other popular languages. The aim of using it in instruction is to address algorithms and their implementation in a way that allows focus to be put on learning algorithmic thinking and programming instead of on learning a complex syntax. Invariant based programming is a diagrammatic approach to developing programs that are correct by construction. The approach is based on elementary propositional and predicate logic, and makes explicit the underlying mathematical foundations of programming. The aim is also to show how mathematics in general, and logic in particular, can be used to create better programs.
Resumo:
Tämä Diplomityö keskittyy tutkimaan pilvisovelluskehitystä Google App Engine – pilvisovellusalustalle perustuen kuusi –vaiheiseen vesiputousmalliin sekä tutkimaan Google App Engine -pilvisovellusalustan tarjoamia mahdollisuuksia ja rajoituksia sovelluskehityksen muodossa. Tutkimuksen perusteella kuusi –vaiheinen vesiputousmalli soveltuu pilvisovelluskehitykseen,mikäli vaatimusmäärittely on tarkka jo sovelluskehityksen alkuvaiheessa. Tutkimuksen tuloksena syntyi vaatimusmäärittely MikkoMail –pilvisovellukselle. Vaatimusmäärittelyn pohjalta luotiin MikkoMail –pilvisovellus Google App Engine –pilvisovellusalustalle. Google App Engine –pilvisovellusalusta tukee vain Python- ja Java –ohjelmointikieliä eikä sisällä lainkaan ulkoista tietokantapalveluiden tukea. Tästä syystä Google App Engine -pilvisovellusalusta soveltuu pieniin, keskisuuriin ja pilottiprojektinomaisiin sovelluskehitysprojekteihin.
Resumo:
Sage on verkkoselaimessa toimiva symbolisesti laskeva ohjelmisto, joka rakentuu useista avoimen lähdekoodin periaatetta noudattavista moduuleista. Komentokielenä se käyttää Python-ohjelmointikieltä. Sage soveltuu sekä opetus- että tutkimuskäyttöön. Opetuskäytössä sen tärkeimpiä ominaisuuksia ovat ilmaisuus, helppokäyttöisyys, vuorovaikutteiset ja graafiset toiminnot, dokumenttien muotoilutyökalut sekä verkkoympäristön edut, kuten käyttöjärjestelmäriippumattomuus ja ryhmätyö- mahdollisuudet. Tutkielmassa esitellään aihealueittain, miten Sagea voidaan hyödyntää lukion matematiikan opetuksessa kursseilla, joilla käsitellään funktioita ja yhtälöitä, geometriaa ja trigonometriaa, differentiaali- ja integraalilaskentaa, todennäköisyyslaskentaa sekä numeerisia menetelmiä. Aihepiireihin liittyvien metodien toimintaa havainnollistetaan esimerkkien ja opetusta tukevien interaktiivisten sovellusten avulla. Lisäksi tutkielma sisältää 21 Sagen käyttöön perustuvaa tehtävää ratkaisuineen. Suurin osa tutkielmaa varten ohjelmoiduista sovelluksista on julkaistu osana Sagea versiosta 4.7.1 alkaen. Tutkielma perustuu Sage-ohjelmiston versioon 4.7.
Resumo:
EasyLEED is a program designed for the extraction of intensity-energy spectra from low-energy electron diffraction patterns. It can be used to get information about the position of individual atoms on a surface of some substance. The goal of this thesis is to make easyLEED useful in LEED-research. It is achieved by adding new features, i.e. plotting intensity-energy spectra, setting tracking parameters and allowing exporting and importing of settings and spot location data, to the program. The detailed description of these added features and how they’re done and how they impact on the usefulness of the program in research are presented in this thesis. Improving the calculational part of the program is not discussed.