OHJELMOINTIA 1. JOHDANTO 2. OHJELMAN PERUSELEMENTIT 3. VUOROVAIKUTTEINEN OHJELMA

Koko: px
Aloita esitys sivulta:

Download "OHJELMOINTIA 1. JOHDANTO 2. OHJELMAN PERUSELEMENTIT 3. VUOROVAIKUTTEINEN OHJELMA"

Transkriptio

1 OHJELMOINTIA 1. JOHDANTO 1.1Taustaa ja ohjelmoinnin käsitemaailma 1.2 Erilaiset ohjelmointikielet ja paradigmat 1.3 Algoritmit ja tietorakenteet 1.4 Ohjelman perusrakenteet 2. OHJELMAN PERUSELEMENTIT 2.1 Tunnukset 2.2 Muuttujat 2.3 Tyypit 2.4 Muuttujan määrittely 2.5 Vakiot 2.6 Lauseet 2.7 Kommentit 3. VUOROVAIKUTTEINEN OHJELMA 3.1 Vuorovaikutteisuus 3.2 Sijoituslauseet 3.3 Syöttö ja tulostus funktiot 3.4 Rakenteinen ohjelmointi 1

2 4. VISUAL BASIC 4.1 Ohjelmointiympäristö Johdanto Lomakkeen käsittely OLIO ohjelmoinnin aakkosia 4.2 Ohjelman luominen Johdanto Koodin kirjoittaminen Ohjelmoijan apuvälineet 4.3 Ohjelman käyttöliittymä Lomakkeet ja niiden käsittely Lomakkeen objektit Valikot Työkalurivin luominen Tiedon välittäminen 4.4 Ohjelman kirjoittaminen Proseduurit ja koodin kirjoittaminen Muuttujat Ohjausrakenteet Ohjelman testaus ja virheenkäsittely 4.5 Oliot ja olioluokat Lomakeoliot ja objektitaulukot Tiedostonhallinta Omat olioluokat ja niiden käsittely 4.6 Tietokannat Yleistä tietokantojen käsittelystä Tietokantojen käyttö SQL -kyselykieli 2

3 1. JOHDANTO 1.1 Taustaa ja ohjelmoinnin käsitemaailma Käsitteen ohjelmointikieli määritteleminen on vaikeaa. Voidaan ajatella, että ohjelmointikieli on väline tai käyttöliittymä, jolla ihminen pystyy kertomaan tietokoneelle, mitä sen pitäisi tehdä. Ohjelmoinnin käsitemaailma Tietojenkäsittelyn osapuolia ovat yleisimmin ihminen ja tietokone. Koska tietokone on käytännöllisesti katsoen pelkkää elektroniikkaa, ihmisen ja tietokoneen välinen kommunikointi tulee toteuttaa koneen ehdoilla. Kun tietokone on toiminnassa, sen prosessori suorittaa käytännössä aina jotain ihmisen laatimaa ohjelmaa. Tietokoneohjelma (program) on yleisesti määriteltynä jonkin tietojenkäsittelytehtävän esitys sarjana sellaisia toimenpideohjeita, jotka on mahdollista suorittaa tietokoneella joko suoraan tai tiettyjen muunnosten jälkeen. Tietokoneen alkeistoiminnot perustuvat sen ymmärtämään kieleen eli konekieleen (machine language). Konekielisissä ohjelmissa on kahdenlaisia osia: operaatioita eli käskyjä ja operandeja, jotka ovat yleensä muistipaikkoja. Operaatioiden avulla ohjelmissa käsitellään muistipaikkojen sisältöjä. Ohjelmat ovatkin pohjimmiltaan tietokoneen muistissa olevan tiedon eli datan manipulointikäskysarjoja. Tietokoneen osaamat toimenpiteet eli operaatiot ovat hyvin yksinkertaisia ja niitä on vain rajallinen määrä. Tietokone osaa esimerkiksi laskea yhteen kaksi lukua ja tarkistaa, onko tulos nolla. Koska tietokoneessa kaikki asiat esitetään bittien avulla, konekieliset ohjelmat ovat käytännössä peräkkäistä ykkösiä ja nollia. Ihmisen kannalta konekieli on hyvin hankala tiedon ja toimenpiteiden esittämisen väline. Tämän vuoksi ihminen käyttää tietokoneelle ohjeita laatiessaan konekieltä korkeammalla tasolla olevia ohjelmoinnin välineitä. Ihminen kirjoittaa ohjelman ohjelmointikielellä (programming language), minkä jälkeen ohjelma käännetään (compile) tietokoneen avulla konekielelle, jotta kone voisi sen suorittaa (execute). Käännöksen suorittaa erityinen ohjelma, kääntäjä (compiler), joka käy ohjelman läpi rivi riviltä ja tuottaa tuloksena suorituskelpoisen (executable) ohjelman eli ns. exe-koodin. Erotukseksi suorituskelpoisesta ohjelmasta ohjelmointikielellä kirjoitettua ohjelmaa kutsutaan lähdekieliseksi ohjelmaksi tai koodiksi (source program, source code). Jotta ohjelma voitaisiin suorittaa eli ajaa (run), käännöksen tulee onnistua virheettömänä eli ohjelman tulee "mennä käännöksestä läpi". Ohjelmassa ei ole tällöin ohjelmointikielen sääntöjen vastaisia piirteitä. Vaikka ohjelma menisikin käännöksestä läpi, siinä voi olla loogisia virheitä, joiden vuoksi ohjelma ei toimi tarkoitetulla tavalla. Kääntäjä antaa kahdentyyppisiä virheilmoituksia: varoituksia (warnings) ja virheilmoituksia (errors). Varoitukset eivät välttämättä estä suorituskelpoisen ohjelman tuottamista. Niiden avulla ilmoitetaan, että ohjelmassa on oudolta vaikuttavia piirteitä. Mikäli kääntäjä ilmoittaa aidoista virheistä, tämä tarkoittaa, että ohjelma ei ole kirjoitussääntöjen mukainen eikä suorituskelpoista ohjelmaa voida tuottaa. 3

4 Kommunikointihierarkia 1.2 Erilaiset ohjelmointikielet ja paradigmat Ohjelmointikieliä on erilaisia. Ne voidaan jakaa karkeasti kahteen luokkaan: -symboliset konekielet -lausekielet eli korkean tason kielet Symboliset konekielet Symbolisissa konekielissä (assembly language) bitteinä esitettävät käskyt korvataan kirjainlyhenteillä eli käskyille annetaan symboliset vastineet. Esimerkiksi yhteen laskukäskyn tunnisteena on ADD, vähennyslaskun SUB ja kertolaskun MUL. Muistipaikoille annetaan symbolisilla konekielillä kirjoitetuissa ohjelmissa niin ikään symboliset nimet, esimerkiksi PALKKA, VERO. Symbolisella konekielellä kirjoitettu käsky voisi olla esimerkiksi: SUB PALKKA, VERO (mikä tarkoittaa sitä, että palkasta vähennetään vero, jolloin PALKKA pienenee.) Symbolisella kielellä kirjoitetun ohjelman konekielelle kääntävää ohjelmaa kutsutaan assember -kääntäjäksi (assembler). Symboliset konekielet ovat tietokonekohtaisia ja niitä käytetään, kun ohjelmoidaan tietokoneen laitteistoon läheisesti liittyviä asioita, kuten käyttöjärjestelmiä tai laiteajureita (ns. laiteläheinen ohjelmointi). Lausekielet Lausekielet eli korkean tason kielet (high level language) muistuttavat puhuttua kieltä. Niissä on hyvin suppea "sanavarasto" ja tarkat kielioppisäännöt eli syntaksi (syntax). Kielioppisäännöt ilmaisevat ohjelmien sallitun muodon. Ne ovat samankaltaisia kuin esim. suomen kielen kielioppisäännöt välimerkkisääntöineen. Kaikilla asioilla on lisäksi hyvin tarkat merkitykset eli semantiikka (semantics). Tämä on välttämätöntä, jotta ihminen ja kone voisivat ymmärtää ohjelman samalla tavalla. Lausekielet eivät ole suunniteltuja millekään laitteistolle erityisesti vaan ne ovat laiteriippumattomia. 4

5 Kääntäjä tai tulkki Jotta lausekielellä kirjoitettu ohjelma voitaisiin ajaa jossain tietyssä laitteistossa, ohjelma on käännettävä laitteistoa varten suunnitellulla kääntäjällä konekielelle. Joskus kääntäjä korvataan tulkilla (interpreter). Tällöin on kysymys siitä, että lähdekielisestä ohjelmasta konekielelle muunnetut käskyt suoritetaan välittömästi tulkkauksen jälkeen. Käytännössä tämä tapahtuu rivi riviltä. Kääntävissä järjestelmissä sen sijaan koko ohjelma käännetään ennen ajoa. Lausekielen, symbolisen konekielen ja konekielen välinen suhde Ihmisen puhekielen, korkean tason lausekielen, joka on jo ohjelmointikieli, symbolisen konekielen ja konekielen hierarkkinen järjestys suhteessa ihmisen ja koneen käsite-maailmaan voidaan esittää seuraavasti: Sanalla paradigma on useita merkityksiä. Ohjelmointikielten yhteydessä sillä tarkoitetaan kokonaisuutta, joka muodostuu seuraavista kolmesta osasta: laskennallisesta mallista, käsitteistöstä ja välineistöstä. Perinteisessä imperatiivisessa paradigmassa laskennallinen malli perustuu RAM-koneeseen (random access machine). Jos halutaan toteuttaa esimerkiksi lajitteluohjelma, käsitteistöön kuuluvat kielen rakenteet kuten tietueet, osoittimet, toistorakenteet ja tiedostot. Välineistö taas tarkoittaa sitä, miten ohjelmoija kielen käsitteitä käyttää. Lajitteluohjelman tapauksessa välineistöä voivat olla linkitetty lista sekä syöttö- ja tulostustoiminnot. Yleisesti ottaen paradigma antaa mahdollisuudet tai puitteet eri asioiden toteuttamiseen. Eri paradigmoissa on erilaiset mahdollisuudet eri asioiden toteuttamiseen. Jotkin tehtävät onnistuvat helpommin jossakin ohjelmointiparadigmassa, jotkin toiset asiat taas jossakin toisessa paradigmassa. 5 Imperatiivinen paradigma (käskykielet) -lohkorakenteinen (proseduraalinen) -oliokeskeinen -hajautettu (rinnakkainen) Deklaratiivinen paradigma (esittelykielet) -funktionaalinen -looginen -tietokantakielet

6 Ohjelmointikielten jaotteluita on muitakin, järjestelmäohjelmointikielet, joita ovat esimerkiksi Pascal, C, C++ ja Java, ja toiseen ryhmään skriptikielet, kuten Perl, Python ja JavaScript. Järjestelmäohjelmointikielet on tarkoitettu komponenttien toteuttamiseen symbolisia konekieliä korkeammalla tasolla, kun taas skriptikielillä voidaan yhdistellä olemassa olevia komponentteja toisiinsa. 1.3 Algoritmit ja tietorakenteet Algoritmit Ohjelmat käsittelevät aina käytännössä tietorakenteita. Niitä menettelytapojen ja sääntöjen kokoelmia, joiden avulla rakenteita käsitellään, kutsutaan algoritmeiksi (algorithm). Algoritmit käsittelevät aina jotain tietoa (syötteitä, lähtötietoja) siten, että syntyy uutta tietoa (tulosteita, tulostietoja). Algoritmeille on tyypillistä, että ne eivät ole mistään esitystavasta tai kielestä riippuvaisia. Ne ovat täysin yleisiä ja niitä voi esittää millä välineillä tahansa, esimerkiksi puhekielellä, graafisesta tai ohjelmointikielellä. On myös huomattava, että algoritmi ei ole yksinomaan ohjelmointiin liittyvä käsite. Esimerkiksi tavallista keittokirjaa voidaan pitää algoritmikokelmana. Reseptit voidaan tällöin nähdä algoritmeina ja raaka-aineet tietorakenteina. Tietorakenteet Kaikki ohjelmat käsittelevät aina jotain tietoa. Tieto tulee esittää ohjelmissa ohjelmointikielen sisältämien mekanismien avulla. Korkeantason ohjelmointikielet tarjoavat välineitä, joilla on suorat vastineet reaalimaailman rakenteisiin. Ohjelmointikielet tarjoavat välineitä yksittäisten tietojen esittämistä varten, esimerkiksi ihmisen nimeä, kokeen arvosanaa tai päivämäärää varten. Myös monimutkaisempia rakenteita varten on olemassa esitystapoja. Esimerkiksi puhelinluettelon yhtä riviä varten on rakenne, joka mahdollistaa usean tiedon (tässä tapauksessa nimen, osoitteen ja puhelinnumeron) samanaikaisen käsittelyn. On olemassa myös rakenteita, jotka mahdollistavat suurten tietomäärien käsittelyn. Esimerkiksi yhden vuoden jokaisen päivän sademäärät voidaan koota yhteen tietorakenteeseen. Tietorakenne (data structure) on edellä esitettyjen esimerkkien valossa informaatioyksikkö, joka voi sisältää yhden yksittäisen tiedon tai tietojoukon. Taulukko Taulukko on hyvin yksinkertainen lineaarinen rakenne. Perusrakenne on valmiina useimmissa korkean tason ohjelmointikielissä helppo ohjelmoida, alkiot indeksoidaan ensimmäisestä viimeiseen, mihin tahansa alkioon voidaan heti viitata. Taulukon alkioiden väliin ei voi lisätä uutta alkiota eikä sieltä voi poistaa alkiot Rakenne on erittäin jäykkä, jos tällaisia toimintoja (päivityksiä) tarvitaan. (Esimerkki) Linkitetty lista (linked list) Se on taulukkoa paljon joustavampi rakenne monessa tilanteessa. Lista koostuu yksittäisistä alkioista, joihin kuhunkin on talletettu dataa ja osoitin (referenssi) seuraavaan alkioon. Listan kokoa ei ole ennalta rajoitettu, vaan listaan voidaan lisätä ja siitä voidaan poistaa alkioita ajonaikaisesti listan kokoa rajoittaa 6

7 vain käytettävissä oleva muisti, alkioita voi lisätä minne tahansa, alkioita voi poistaa mistä tahansa, alkioiden järjestystä voi vaihtaa, listan alkiot voivat olla samaa tyyppiä. Linkitetyn listan tärkein rajoitus on, että sen alkioita voidaan käydä läpi vain yksitellen eli sen alkioihin ei voi viitata suoraan (vrt. taulukko) Pino (stack) Pino on abstrakti tietotyyppi, jolle on määritelty seuraavat operaatiot: Push(x) - lisää pinon päälle alkion x Pop() - palauttaa ja poistaa pinon päällimmäisen alkion Top() - palauttaa pinon päällimmäisen alkion (poistamatta sitä) IsEmptyo - palauttaa tiedon siit ä, onko pino tyhjä Toimii siis samaan tapaan kuin pöydällä oleva korttipakka. Pino voidaan toteuttaa taulukon avulla tai linkitettynä listana. Jono (queue) Jono on abstrakti tietotyyppi, jolle on määritelty seuraavat operaatiot: Put(x) tai Enqueue(x) - lisää jonon loppuun alkion x Get() tai Dequeue() palauttaa (ja poistaa) jonon ensimmäisen alkion First() - palauttaa jonon ensimmäisen alkion IsEmpty()- kertoo, onko jono tyhjä Jonokuri FIFO (First In First Out) Jono voidaan toteuttaa eri tavoin (taulukon avulla tai linkitettynä listana). Puurakenteet 7

8 Käsitteitä ja ominaisuuksia: Solmu (vertex) on puuhun kuuluva alkio, johon voidaan tallettaa dataa Väli, särmä, kaari (edge) on suorayhteys kahden solmun välillä Juuri (root) on puun ylin solmu Solmun lähin edeltäjä on sen isä (father, dad, parent). Kauemmista edeltäjistä käytetään nimeä isoisä, esi-isä tai edeltäjä (grandfather, ancestor) Solmun lähinnä alemmat seuraajat ovat sen lapsia (children). Näiden lapset vastaavasti lapsenlapsia (grandchildren) Kullakin solmulla on vain yksi isä, juurella ei ole isää Solmulla voi olla o-n kpl lapsia. Yleisessä puussa lasten määrää ei ole rajoitettu Saman isän lapset ovat toistensa sisaruksia (sibling) Lehti (leaf, external node) on solmu, jolla ei ole lapsia Muut solmut ovat puun sisäsolmuja (internal node) Lehdet ovat joskus rakenteeltaan erilaisia kuin sisäsolmut Polku (path) on yhteys kahden solmun välillä Juuresta mihin tahansa solmuun on vain yksi polku. Vastaavasti jokaisesta solmusta on vain yksi polku mihin tahansa toiseen solmuun Jokainen solmu on oman alipuunsa (subtree) juuri puiden joukkoon metsä (forest) Binääripuu (binary tree) on järjestetty puu, jossa jokaisella solmulla on täsmälleen kaksi lasta: vasen ja oikea (voivat olla tyhjiä) Binääripuu on tiivis (full), jos kaikki puussa olevat tasot ovat täynnä mahdollisesti alinta lukuun ottamatta 8

9 1.4 Ohjelman perusrakenteet TOP-DOWN- ja BOTTOM-UP-menetelmät johtavat käytännössä modulaariseen (modular) ohjelmointiin, jolla tarkoitetaan sitä, että ohjelma koostuu osaohjelmista eli aliohjelmista (sub program). Modulaarisuus on yksi hyvälle ohjelmalla asetettu vaatimus. Toinen vaatimus on strukturaalisuus, mikä edellyttää sitä, että käytettävä ohjelmointikieli tukee rakenteellista eli strukturaalista ohjelmointia (structured programming). Rakenteellinen ohjelmointi käyttää hyväksi kolmea ohjelmoinnin perusrakennetta, jotka kaikki ovat välttämättömiä ja yhdessä riittäviä hyvän ohjelman tekemiseksi. Nämä kolme perusrakennetta ovat 1. Peräkkäisrakenne 2. Valintarakenne 3. Toistorakenne Rakenteita kutsutaan usein ohjausrakenteiksi tai kontrollirakenteiksi (control structure), koska niiden avulla ohjataan ohjelman kulkua. Peräkkäisrakenne Peräkkäisrakenne on yksinkertaisin ohjelmassa käytettävistä rakenteista. Siinä toteutetaan sarja toimenpiteitä peräkkäin. Valintarakenne Valintarakennetta käytetään silloin, kun ohjelmassa halutaan suorittaa jotain vain silloin, kun jokin ehto on voimassa. Valintatilanteesta on esimerkkinä seuraava virke: Jos sinulla on rahaa, käy elokuvissa. Tällainen rakenne voidaan liittää peräkkäisrakenteen sisälle, esimerkiksi päivittäisrutiinien joukkoon, kuten herää syö aamiainen mene kouluun opiskele palaa koulusta tee läksyt JOS (sinulla on rahaa) käy elokuvissa käy iltapesulla mene nukkumaan JOS-rakenne voi sisältää vaihtoehtoisen MUUTEN-haarana: JOS (sinulla on rahaa) käy elokuvissa käy nakkikioskilla MUUTEN katso tv:tä 9

10 Tässä MUUTEN -haara suoritetaan tilanteessa, jossa rahaa ei ole, toisin sanoen kahdesta vaihtoehtoisesta toiminta-mallista valitaan toinen ja vain toinen. JOS-MUUTEN-rakenteen sisässä voi olla toinen JOS -rakenne: JOS (sinulla on rahaa) käy elokuvissa käy nakkikioskilla } MUUTEN { JOS (tv:stä tulee jotain katsomisen arvoista) { katso tv:tä } MUUTEN { käy lenkillä } Edellisen rakenteen perusteella lenkille päästään, jos lompakko on tyhjä eikä televisiosta tule mitään mielenkiintoista. Toistorakenne Jos tehtäväkokonaisuuden suorittaminen edellyttää samanlaisina toistuvien yksittäistapahtumien toistamista, voidaan käyttää toistorakennetta. Esimerkiksi kuoppaa kaivettaessa toistuu lapiointi. Kuoppaa pitää kaivaa niin kauan, että se on tarpeeksi syvä. Luonnollisella kielellä vaatimus ja toimintaohje voitaisiin esittää seuraavasti: Kaiva kuoppaa, kunnes se on tarpeeksi syvä. Sama asia voidaan esittää muodollisemmin seuraavasti: TEE SEURAAVAA kaiva lapiollinen NIIN KAUAN KUIN (kuoppa on liian pieni) Sama voitaisiin esittää myös seuraavasti: NIlN KAUAN KUIN (kuoppa on liian pieni) kaiva lapiollinen Toistossa on periaatteena, että jokaisen toistokerran jälkeen (tai ennen sitä) tutkitaan jatkoehto uudelleen ts. "pyöritään silmukassa", kunnes voidaan lopettaa. Rakenteiden edut Rakenteiden etu on siinä, että niitä voidaan yhdistää: rakenteita voidaan kirjoittaa peräkkäin ja kunkin 10

11 rakenteen sisässä voi olla mikä tahansa rakenne. Rakenteita voidaan kirjoittaa myös useita sisäkkäin. Peräkkäisyyttä ja sisäkkäisyyttä yhdistelemällä syntyy rakenteinen (tai lohkorakenteinen) ohjelma. 2. OHJELMAN PERUSELEMENTIT 2.1 Tunnukset Tunnukset (identifier) ovat nimiä erilaisille asioille, jollaisia ohjelmointikielissä ovat mm. muuttujat, vakiot ja tyypit. Tunnus alkaa aina kirjaimella. Ensimmäistä kirjainta voi seurata kirjaimia ja numeroita mielivaltaisessa järjestyksessä. Myös alaviivaa ("_") voi käyttää tunnuksissa (jopa ensimmäisenä merkkinä). Tunnuksissa isot ja pienet kirjaimet ovat usein eriarvoisia. Näin tunnukset C kieli ja c kieli viittaavat eri asiaan. On huomattava, että tunnuksissa ei voi käyttää useinkaan skandinaavisia kirjaimia å, ä, ö, Å, Ä ja Ö. Periaatteessa tunnukset voivat olla miten pitkiä tahansa. ANSI -standardi määrittelee, että tunnukset erotetaan toisistaan 31 ensimmäisen merkin osalta, joten pidempiä nimiä ei välttämättä ole järkevää käyttää. 2.2 Muuttujat Muuttujia (variable) käytetään ohjelmissa tietovarastoina erilaisille asioille. Ohjelma voisi kysyä jokaiselta käyttäjältään esimerkiksi tämän nimeä ja tallettaa jokaisen nimen vuorollaan muuttujaan kayttajan_nimi (huomaa, että ä-kirjaimen asemesta on käytetty a-kirjainta). Täten kayttajan_nimi vaihtelee käyttäjän mukaan eli muuttuja saa erilaisia arvoja. Muuttujalle onkin tyypillistä, että sen arvo muuttuu ohjelman suorituksen aikana useaan kertaan (tästä nimitys muuttuja). Käytännössä muuttuja viittaa alueeseen tietokoneen muistissa. Muuttujan arvoksi kutsutaan sitä, mikä on muistialueen sisältönä. Voisi ajatella, että muistiin viitataan numeerisen osoitteen avulla, mutta on helpompaa antaa muuttujille omat nimet ja viitata muistiin näiden nimien avulla. Muuttujat nimetäänkin tunnusten avulla. Jokaisella muuttujalla on näin ollen kirjaimelta alkava nimi. Tietokoneen muistia voidaan ajatella lokerikkona, jonka lokeroissa muuttujia säilytetään; kun tiedetään lokeron nimi, voidaan käsitellä siellä olevaa muuttujaa. 2.3 Tyypit Oletetaan, että käytössä on muuttuja, jonka nimi on i. Kun ohjelma viittaa muuttujaan i, sen täytyy tietää, minkälaiseen olioon se viittaa. Ohjelman kannalta on oleellista tietää, onko i-nimisessä muistipaikassa jokin luku, kirjain, teksti (merkkijono) vai jotain muuta, jotta ohjelmassa osataan tehdä muuttujalle oikeita operaatioita. Jos esimerkiksi muuttujan arvo halutaan tulostaa, on tärkeää 11

12 tietää, onko tulostettavan muuttujan sisältämässä muistipaikassa luku vai kirjain. Käytännössä muistipaikassa on vain pelkkiä peräkkäisiä bittejä, jotka eivät ilman tulkintaa sisällä mitään informaatiota. Jotta ohjelma osaa käsitellä muistissa olevaa tietoa oikein, sen tulee tietää, kuinka bittejä tulkitaan. Ohjelmointiterminologiaa käyttäen sanotaan, että ohjelman pitää tietää muuttujan tyyppi (type). Esimerkiksi C-kielessä ennalta määriteltyjä yksinkertaisia tyyppejä ovat mm. seuraavat: int kokonaisluku (16 bittiä) long kokonaisluku (32 bittiä) float liukuluku double kaksoistarkkuuden liukuluku char merkki tai 8 bittinen kokonaisluku Todettakoon, että yhden ja saman muistipaikan sisältöä voidaan tulkita useammalla tavalla. Tulkinta on tavallaan suodatin, jonka läpi tietoa tarkastellaan. Jos 8-bittinen tieto halutaan nähdä merkkinä, käytetään "merkkisuodatinta". Jos se halutaan nähdä kokonaislukuna, käytetään "kokonaislukusuodatinta". 2.4 Muuttujan määrittely Muuttujan määrittely (variable declaration) tarkoittaa muuttujan nimen ja muuttujan tyypin liittämistä toisiinsa. Muuttujien määrittelyt sijoitetaan ohjelmalohkon alkuun. Ohjelmassa tulee ilmoittaa jokaisesta muuttujasta sen tyyppi seuraavasti: int indeksi; char merkki; Muuttujien määrittelyt sijoitetaan siis ohjelmassa ohjelmalohkon alkuun. Samaa tyyppiä olevat muuttujat voi koota listaksi, jossa jäsenet erotetaan toisistaan pilkuilla seuraavaan tapaan: int luku1, luku2, lukua; Ohjelmista tulee yleensä kuitenkin selkeämpiä, mikäli kaikki muuttujien määrittelyt kirjoitetaan omille riveilleen. Muuttujat tulee aina nimetä niiden käyttöä kuvaavalla tavalla, esimerkiksi sademaara, pisteet, palkka,... eikä arvoituksellisilla koodilyhenteillä kuten s, pi, pa. Muuttujan määrittely saa aikaan sen, että tietokoneen muistista varataan tilaa muuttujaa varten. Eri tyypit tarvitsevat erilaisen määrän tilaa: merkille riittää aina yksi tavu, kokonaisluku (int) vie kaksi tavua, pitkä kokonaisluku (long) ja liukuluku (float) vievät 4 tavua. Määrittelyn yhteydessä muuttujalle voidaan antaa alkuarvo seuraavalla tavalla: int summa = 0, Jos muuttujaa ei määritellä mutta sitä yritetään käyttää ohjelmassa, kääntäjä huomaa virheen ohjelman käännös-vaiheessa ja antaa tällöin yleensä virheilmoituksen "Undefined symbol..." eli määrittelemätön symboli. 12

13 2.5 Vakiot Kaikissa ohjelmissa käytetään yleensä joitain kiinteitä lukuarvoja laskutoimituksissa. Toisaalta ohjelmien tulosteissa käytetään samanlaisina toistuvia tekstejä. Näissä tilanteissa tarvitaan vakioita (constant). Vakiot jaetaan kahteen ryhmään: - paljaat vakiot eli literaalivakiot - nimetyt vakiot. Paljaat vakiot Paljaat vakiot voidaan ryhmitellä seuraavasti: - numeeriset vakiot, joita ovat esim. 5, 5.0, -5, merkkivakiot, joita ovat esim. 5, A, a - merkkijonovakiot, jollainen on esim. "Visual Basic" Nimetyt vakiot Paljaalla vakiolle voidaan antaa nimi, jota voidaan käyttää ohjelmassa kuten paljasta vakiota. Tällöin on määritelty nimetty vakio. Nimetty vakio määritellään C-kielen ohjelmassa esimerkiksi seuraavasti: # define PII Lauseet Ohjelman varsinainen toiminta tapahtuu lauseissa (statement). Lauseessa tehdään jokin toimenpide, esimerkiksi kahden luvun kertolasku, merkkijonon tulostaminen tai merkin lukeminen. ympyran_ala = Pll * ympyransade * ympyransade; jossa muuttujan ympyran_ala arvoksi sijoitetaan "='- merkin oikealla puolella olevan laskutoimituksen tulos. Tämä on esimerkki lausetyypistä, jota ohjelmissa tarvitaan usein. Lauseella on C- kielessä ominaista, että se päättyy aina puolipisteeseen. 2.7 Kommentit Ohjelmiin voi ja niihin kannattaa liittää ohjelman toimintaa selittäviä tekstejä eli kommentteja (comment). Tällaiset selitystekstit sijoitetaan C-kielessä merkintöjen /* ja */ väliin esimerkiksi seuraavasti. 13

14 / * Tämä on kommentti */ TÄMÄ ON KOMMENTTI Visual Basicissa Muuttujien merkitykset kannattaa kommentoida muuttujien määrittelyjen yhteydessä, elleivät muuttujien nimet ole täysin tarkoitustaan kuvaavia. Kommentit voidaan kirjoittaa seuraavaan tapaan: int Ikm; / * ohi ajaneiden autojen Ikm */ int k nopeus; / * autojen mitattu keskinopeus */ 3. VUOROVAIKUTTEINEN OHJELMA 3.1 Vuorovaikutteisuus Ohjelmat keskustelevat käyttäjien kanssa eli esittävät käyttäjille kysymyksiä, vastauksia, kehotuksia jne. Käyttäjät puolestaan vastaavat ohjelmien esittämiin kysymyksiin, toimivat ohjelmien kehotuksien mukaan jne. Tällaisia ohjelmia kutsutaan vuorovaikutteisiksi tai interaktiivisiksi (interactive). Vuorovaikutus sisältää tiedon lähettämisen ja vastaanottamisen. Ohjelmoija tarkastelee vuorovaikutussuhdetta aina ohjelman kannalta. Kun ohjelmassa ilmoitetaan käyttäjälle jotain, kyseessä on tiedon lähettäminen eli tulostustoiminto (kirjoittaminen). Kun taas ohjelma ottaa vastaan käyttäjän antamia syötteitä, kyseessä on ohjelman kannalta lukeminen. Tätä vuorovaikutussuhdetta, jota ohjelmissa tarkastellaan aina ohjelman kannalta, havainnollistetaan alla olevassa kuvassa. 3.2 Sijoituslauseet Ohjelman varsinainen toiminta toteutetaan käytännössä erilaisissa lauseissa, joista keskeisin on sijoituslause (assignment statement). Siinä asetetaan tai vaihdetaan muuttujan arvo. 14

15 Sijoituslauseessa on esimerkiksi C-kielessä neljä osaa: muuttujan nimi sijoitusoperaattori lauseke ; Sijoituslauseen yleinen muoto on seuraava: muuttujan_nimi = lauseke; Lauseke (expression) voi olla vakioarvo, yksittäinen muuttuja, funktion kutsu tai laskutoimitus, joka sisältää muuttujia, vakioita, funktion kutsuja ja operaattoreita. Yksinkertaisia sijoituslauseita, joissa lausekkeen muodostavat yksittäiset vakiot tai muuttujat, ovat esim. seuraavat: x = 1; lkm = 0; Z = Y; Sijoituslause, jonka oikealla puolella on funktion kutsu, näyttää seuraavalta: x = pow (y, 2); Tässä pow0 on matemaattinen funktio, joka korottaa y:n arvon toiseen potenssiin. Tulos sijoitetaan = arvoksi. Esimerkki laskutoimituksesta on PII * sade * sade missä PII on vakio, sade muuttujan nimi ja * kertolaskuoperaattori. Tämä lauseke voidaan sijoittaa sijoituslauseessa "="-merkin oikealle puolelle, jolloin saadaan sijoituslause ala = PII * sade * sade; 3.3 Syöttö ja tulostus funktiot Ohjelmien kirjoittaminen ei ole sattumanvaraista esimerkiksi C-kielisten lauseiden peräkkäin kirjoittamista mielivaltaisessa järjestyksessä vaan systemaattista toimintaa, joka vaatii ajattelua. Jotta ohjelma voisi toimia käytännössä, sen logiikan tulee toimia myös paperilla. Jos ohjelmaa ei pystytä suunnittelemaan kynän ja paperin avulla, sen kirjoittaminen ohjelmointikielellä on mahdotonta. Ohjelmien suunnitteluun on olemassa erilaisia formaaleja (so. muodollisia, tarkkojen sääntöjen mukaisia) välineitä: lohkokaavioita, vuokaavioita ja pseudokoodeja. 15

16 Ohjelman yleinen rakenne Jokaiseen ohjelmaan kuuluu yleensä kolme vaihetta: 1. tietojen syöttö (käyttäjä syöttää, ohjelma ottaa vastaan) 2. laskenta 3. tietojen tulostus C-kielen yleisimmin käytetty tulostuslause (output statement) alkaa sanalla printf. Tämä on funktio, joka tulostaa kuva-ruudulle haluttua tietoa. Esimerkiksi lause printf (Hiiohoi"); tulostaa kuvaruudulle tekstin Hiiohoi. Tulostuslauseessa tulostetaan tekstiä lainausmerkkien sisässä. Tekstin lisäksi tulostuslauseessa halutaan usein tulostaa myös lukuja. 3.4 Rakenteinen ohjelmointi Rakenteinen ohjelmointi (structured programming) on systemaattinen tapa tuottaa ohjelmia, joita on helppo ymmärtää, helppo muuttaa ja helppo testata. Rakenteinen ohjelmointi edellyttää selkeiden ohjelmarakenteiden käyttöä. Rakenteisuuden tulee ilmetä myös ohjelman kirjoitusasusta. Tämän vuoksi ohjelmissa käytetään tekstin sisennyksiä. Vaikka sisennyksillä ei ole kääntäjän kannalta merkitystä, niillä on suuri merkitys ohjelman lukijalle. If -lauseen yksinkertaisin muoto on sellainen, missä lauseet joko suoritetaan tai jätetään suorittamatta. Ohjelmarakenteita voidaan kuvata vuokaavioiden (flow chart) avulla. Kaavioissa käytetään sovittuja graafisia symboleja. Esimerkiksi yksittäisen vaihtoehdon if -rakenne voidaan esittää seuraavanlaisena vuokaaviona: Kokonaisia ohjelmia voidaan suunnitella kirjoittamalla vuokaaviota peräkkäin. Pseudokoodin käyttö on yleensä kuitenkin kätevämpää. Käyttäjän kannalta olisi mukavaa, jos ohjelmassa tehtäisiin jotain myös siinä tapauksessa, että ehto ei ole tosi. Tällaista tilannetta varten valintalause voikin sisältää vaihtoehto-osan, joka suoritetaan, ellei if -ehto ole voimassa. Vaihtoehto-osa alkaa avainsanalla else. 16

17 Vuokaavioesitys if -else -rakenteelle: Valinta useasta vaihtoehdosta Y-rakennetta voidaan käyttää monivalintatilanteissa, joissa pitää valita yksi useasta mahdollisesta vaihtoehdosta. Esimerkki tällaisesta tapauksesta voisi olla kolmen vaihtoehdon valintatilanne, jossa pitää tutkia, onko luku nolla, negatiivinen vai positiivinen. Rakenne, jota voidaan käyttää, on seuraava: if (ehto) lauseet else if lauseet else lauseet While -toistorakenne Toistorakenteen avulla voidaan suorittaa samoja lauseita toistuvasti peräkkäin. Toistojen määrä on joko etukäteen määrätty tai se riippuu ohjelmassa esitetyistä ehdoista. Tarkastellaan aluksi jo tuttua if -rakennetta: 17 if (rahaa > 100) { ostalevyke(); }

18 Tässä ohjelmanosassa suoritetaan lause (oikeastaan aliohjelman kutsu) ostalevyke(), mikäli muuttujalla rahaa on suurempi arvo kuin 100. Ohjelmaan tehdään seuraava muutos: if - sana korvataan sanalla while. Tällöin saadaan ohjelmanosa: while (rahaa > 100) { ostalevyke(); } Kun ohjelmassa tullaan peräkkäisrakenteen ohjaamana while -lauseeseen, se toimii ensin kuten iflause: aaltosulkeiden välissä olevat lauseet suoritetaan, mikäli ehto on tosi. Kun on päästy while -lohkon loppuun, palataan while -rakenteen ehto-osaan tutkimaan ehtoa uudelleen. Mikäli ehto on edelleen tosi, suoritetaan lauseet uudelleen. Näin jatketaan, kunnes ehto muuttuu epätodeksi. Edellä olevassa esimerkissä on selvästi vikaa, koska siinä ehto (rahaa > 100) näyttää pysyvän jatkuvasti totena. Asian todellinen laita riippuu tietysti ostalevyke() -toimenpiteen toteutuksesta: jos siinä pienennetään muuttujan rahaa arvoa, asia on kunnossa. Seuraavassa while -silmukassa muuttujan rahaa arvoa pienennetään jokaisella kierroksella, joten ohjelma toimii varmemmin: while (rahaa > 100) { osta levyke(); rahaa = rahaa - levykkeen hinta; } While -rakenteelle voidaan esittää seuraavanlainen vuokaavioesitys: While -lausetta käytettäessä on pidettävä mielessä se seikka, jonka unohtaminen johtaa tyypilliseen ohjelma-virheeseen: on muistettava vaikuttaa ehtolausekkeen arvoon lauselohkon sisällä siten, että se muuttuu joskus epätodeksi (muuten jäädään "ikuiseen silmukkaan"). 18

19 For -toistorakenne For -rakennetta kannattaa käyttää, jos toistojen määrä tiedetään ohjelmassa ennen kuin toistot aloitetaan. Jos esimerkiksi halutaan sademäärätiedot viikon jokaiselle päivälle, tiedetään, että sademääriä on seitsemän kappaletta, ja näin ollen sademäärää pyydetään vuorovaikutteisessa ohjelmassa seitsemän kertaa. For -lauseessa toistojen lukumäärää hallitaan ohjelmassa olevan toistolaskurin avulla. Laskurin arvo asetetaan toistojen alussa ykköseksi ja sitä kasvatetaan jokaisella toisto-kerralla yhdellä. Toistot päätetään, kun laskuri on ylittänyt sovitun loppuarvon. Laskuriin kohdistuu näin ollen kolme oleellista operaatiota. Nämä ovat 1. laskurin alkuarvon asettaminen 2. laskurin arvon vertaaminen loppuarvoon 3. laskurin arvon kasvattaminen yhdellä. For-lauseen vuokaavioesitys. 1 = toistolaskurin alkuarvon asettaminen; 2 = toistoehdon tutkiminen (laskurin arvon vertaaminen loppuarvoon); 3=laskurin arvon kasvattaminen. Numeroimattomassa laatikossa suoritetaan toistettavat lauseet. Do... while toistorakenne Jo käsitellyt toistolauseet while ja for ovat molemmat ns. alkuehtoisia toistolauseita. Lauseessa olevan ehdon arvo tutkitaan, ennen kuin siirrytään toistettavaan lauseosaan. Seuraavaksi käsiteltävä toistolause on loppuehtoinen do... while -toistorakenne. Siinä suoritetaan ensin yksi toistokerta ja sen jälkeen tutkitaan pitääkö toistaa uudestaan. Lauseen vuokaavioesitys on seuraava: Do...while -lauseen vuokaavioesitys. Toistettaviksi tarkoitetut lauseet suoritetaan ensin yhden kerran ja sen jälkeen tutkitaan, pitääkö ne suorittaa uudestaan. 19

20 4. VISUAL BASIC Ohjelmointiympäristö Johdanto Mikä on Visual Basic? Kun Microsoft julkaisi vuonna 1991 Visual Basicin ensimmäisen version, se oli merkittävä helpotus vaikeana pidettyyn Windows-ohjelmointiin: aloittelijakin pystyi sen avulla luomaan toimivia ja tyylikkäitä ohjelmia. Uusien versioiden mukana Visual Basiciin on tullut monia parannuksia, ja se soveltuu laajojenkin ohjelmien tekemiseen. Enää Basic ei ole pelkästään aloittelijoille tarkoitettu harjoitteluohjelmointikieli, josta täytyy siirtyä pois taitojen kehittyessä. Visual Basicin käynnistäminen Napsauta Start -painiketta (Käynnistä) hiirellä ja siirrä hiiren osoitin kohtaan Programs (Ohjelmat). Napsauta Programs -valikosta Microsoft Visual Basic 6.0 -ohjelmakansiota. Käynnistettyäsi ohjelman näytölle avautuu Visual Basicin ohjelmointiympäristö ja New Projectvalintaikkuna. New Project -ikkunan eri välilehtien avulla valitaan, millaista projektia halutaan käsitellä. New -välilehden avulla voidaan luoda uusi projekti. Existing -välilehden kautta voidaan avata jokin aikaisemmin tehty projekti. Recent -välilehdellä ovat viimeksi avatut projektit. Oletusasetusten mukaan Visual Basic lataa ohjelmointiympäristöön joukon ikkunoita. Tärkein näistä ikkunoista on näytön oikeassa laidassa oleva Project Explorer -ikkuna, jolla voit käsitellä ohjelmointiprojektia ja kaikkia siihen kuuluvia tiedostoja. Standard EXE -projektissa on oletuksena yksi tyhjä lomake, joka avautuu näytölle valmiiksi, kun uusi ohjelmointiprojekti luodaan. 20

JOHDATUS OHJELMOINTIIN

JOHDATUS OHJELMOINTIIN JOHDATUS OHJELMOINTIIN 1. JOHDANTO 1.1Taustaa ja ohjelmoinnin käsitemaailma 1.2 Erilaiset ohjelmointikielet ja paradigmat 1.3 Algoritmit ja tietorakenteet 1.4 Ohjelman perusrakenteet 2. OHJELMAN PERUSELEMENTIT

Lisätiedot

Ohjelmointitaito (ict1td002, 12 op) Kevät 2008. 1. Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen raine.kauppinen@haaga-helia.

Ohjelmointitaito (ict1td002, 12 op) Kevät 2008. 1. Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen raine.kauppinen@haaga-helia. Ohjelmointitaito (ict1td002, 12 op) Kevät 2008 Raine Kauppinen raine.kauppinen@haaga-helia.fi 1. Java-ohjelmoinnin alkeita Tietokoneohjelma Java-kieli ja Eclipse-ympäristö Java-ohjelma ja ohjelmaluokka

Lisätiedot

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin.

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin. 2. Ohjausrakenteet Ohjausrakenteiden avulla ohjataan ohjelman suoritusta. peräkkäisyys valinta toisto Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet

Lisätiedot

4. Lausekielinen ohjelmointi 4.1

4. Lausekielinen ohjelmointi 4.1 4. Lausekielinen ohjelmointi 4.1 Sisällys Konekieli, symbolinen konekieli ja lausekieli. Lausekielestä konekieleksi: - Lähdekoodi, tekstitiedosto ja tekstieditorit. - Kääntäminen ja tulkinta. - Kääntäminen,

Lisätiedot

Ehto- ja toistolauseet

Ehto- ja toistolauseet Ehto- ja toistolauseet 1 Ehto- ja toistolauseet Uutena asiana opetellaan ohjelmointilauseet / rakenteet, jotka mahdollistavat: Päätösten tekemisen ohjelman suorituksen aikana (esim. kyllä/ei) Samoja lauseiden

Lisätiedot

Java-kielen perusteet

Java-kielen perusteet Java-kielen perusteet Tunnus, varattu sana, kommentti Muuttuja, alkeistietotyyppi, merkkijono, Vakio Tiedon merkkipohjainen tulostaminen Ohjelmointi (ict1tx006) Tunnus (5.3) Javan tunnus Java-kirjain Java-numero

Lisätiedot

4. Lausekielinen ohjelmointi 4.1

4. Lausekielinen ohjelmointi 4.1 4. Lausekielinen ohjelmointi 4.1 Sisällys Konekieli, symbolinen konekieli ja lausekieli. Hyvä ohjelmointitapa. Lausekielestä konekieleksi: - Lähdekoodi, tekstitiedosto ja tekstieditorit. - Kääntäminen

Lisätiedot

Johdatus Ohjelmointiin

Johdatus Ohjelmointiin Johdatus Ohjelmointiin Syksy 2006 Viikko 2 13.9. - 14.9. Tällä viikolla käsiteltävät asiat Peruskäsitteitä Kiintoarvot Tiedon tulostus Yksinkertaiset laskutoimitukset Muuttujat Tiedon syöttäminen Hyvin

Lisätiedot

Tekstinkäsittelyn jatko KSAO Liiketalous 1

Tekstinkäsittelyn jatko KSAO Liiketalous 1 KSAO Liiketalous 1 Makrojen perusteita Toistuvia tehtäviä ja tehtäväsarjoja voidaan automatisoidan makrojen avulla. Makrot ovat sarja nauhoitettuja käskyjä, jotka määräävät mitä toimintoja makro toteuttaa.

Lisätiedot

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä Sisällys 11. Javan toistorakenteet Laskuri- ja lippumuuttujat.. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin lopettaminen break-lauseella.

Lisätiedot

Ohjausrakenteet. Valinta:

Ohjausrakenteet. Valinta: Ohjausrakenteet Luento antaa yleiskuvan siitä kuinka ohjelmassa suorittaan vaihtoehtoisia tehtäviä valintarakenteiden avulla ja kuinka samanlaisia ohjelma-askeleita toistetaan toistorakenteiden avulla

Lisätiedot

2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4)

2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4) 2. Lisää Java-ohjelmoinnin alkeita Muuttuja ja viittausmuuttuja Vakio ja literaalivakio Sijoituslause Syötteen lukeminen ja Scanner-luokka 1 Muuttuja ja viittausmuuttuja (1/4) Edellä mainittiin, että String-tietotyyppi

Lisätiedot

Condes. Quick Start opas. Suunnistuksen ratamestariohjelmisto. Versio 7. Quick Start - opas Condes 7. olfellows www.olfellows.net 1.

Condes. Quick Start opas. Suunnistuksen ratamestariohjelmisto. Versio 7. Quick Start - opas Condes 7. olfellows www.olfellows.net 1. Condes Suunnistuksen ratamestariohjelmisto Versio 7 Quick Start opas Yhteystiedot: olfellows Jouni Laaksonen Poijukuja 4 21120 RAISIO jouni.laaksonen@olfellows.net www.olfellows.net olfellows www.olfellows.net

Lisätiedot

Sähköposti ja uutisryhmät 4.5.2005

Sähköposti ja uutisryhmät 4.5.2005 Outlook Express Käyttöliittymä Outlook Express on windows käyttöön tarkoitettu sähköpostin ja uutisryhmien luku- ja kirjoitussovellus. Se käynnistyy joko omasta kuvakkeestaan työpöydältä tai Internet Explorer

Lisätiedot

AS-0.1103 C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin

AS-0.1103 C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin AS-0.1103 C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin Raimo Nikkilä Aalto-yliopiston sähkötekniikan korkeakoulu - Automaation tietotekniikan tutkimusryhmä 17. tammikuuta 2013

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2011 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2011 1 / 39 Kertausta: tiedoston avaaminen Kun ohjelma haluaa lukea tai kirjoittaa tekstitiedostoon, on ohjelmalle

Lisätiedot

Taulukot. Jukka Harju, Jukka Juslin 2006 1

Taulukot. Jukka Harju, Jukka Juslin 2006 1 Taulukot Jukka Harju, Jukka Juslin 2006 1 Taulukot Taulukot ovat olioita, jotka auttavat organisoimaan suuria määriä tietoa. Käsittelylistalla on: Taulukon tekeminen ja käyttö Rajojen tarkastus ja kapasiteetti

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 7.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 7.2.2011 1 / 39 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti

Lisätiedot

Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla

Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla ohjelmoida useita komponenteiltaan ja rakenteeltaan

Lisätiedot

Java-kielen perusteita

Java-kielen perusteita Java-kielen perusteita valintalauseet 1 Johdantoa kontrollirakenteisiin Tähän saakka ohjelmissa on ollut vain peräkkäisyyttä eli lauseet on suoritettu peräkkäin yksi kerrallaan Tarvitsemme myös valintaa

Lisätiedot

A274101 TIETORAKENTEET JA ALGORITMIT

A274101 TIETORAKENTEET JA ALGORITMIT A274101 TIETORAKENTEET JA ALGORITMIT PUURAKENTEET, BINÄÄRIPUU, TASAPAINOTETUT PUUT MIKÄ ON PUUTIETORAKENNE? Esim. Viereinen kuva esittää erästä puuta. Tietojenkäsittelytieteessä puut kasvavat alaspäin.

Lisätiedot

Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi

Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi 1 Javan perusteet Ohjelmointi IPO-malli Java lähdekoodista suoritettavaksi ohjelmaksi Vakio Muuttuja Miten Javalla näytetään tietoa käyttäjälle, miten Javalla luetaan käyttäjän antama syöte Miten Javalla

Lisätiedot

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembly ja konekieli Tietokoneen ja ohjelmiston rakenne Loogisilla piireillä ja komponenteilla rakennetaan prosessori ja muistit Prosessorin rakenne

Lisätiedot

Pinot, jonot, yleisemmin sekvenssit: kokoelma peräkkäisiä alkioita (lineaarinen järjestys) Yleisempi tilanne: alkioiden hierarkia

Pinot, jonot, yleisemmin sekvenssit: kokoelma peräkkäisiä alkioita (lineaarinen järjestys) Yleisempi tilanne: alkioiden hierarkia Pinot, jonot, yleisemmin sekvenssit: kokoelma peräkkäisiä alkioita (lineaarinen järjestys) Yleisempi tilanne: alkioiden hierarkia Kukin alkio (viite) talletettuna solmuun (node) vastaa paikan käsitettä

Lisätiedot

Sisällys. 3. Pseudokoodi. Johdanto. Johdanto. Johdanto ja esimerkki. Pseudokoodi lauseina. Kommentointi ja sisentäminen.

Sisällys. 3. Pseudokoodi. Johdanto. Johdanto. Johdanto ja esimerkki. Pseudokoodi lauseina. Kommentointi ja sisentäminen. Sisällys 3. Pseudokoodi Johdanto ja esimerkki. Pseudokoodi lauseina. Kommentointi ja sisentäminen. Ohjausrakenteet: Valinta if- ja if--rakenteilla. oisto while-, do-while- ja for-rakenteilla. 3.1 3.2 Johdanto

Lisätiedot

Muuttujien määrittely

Muuttujien määrittely Tarja Heikkilä Muuttujien määrittely Määrittele muuttujat SPSS-ohjelmaan lomakkeen kysymyksistä. Harjoitusta varten lomakkeeseen on muokattu kysymyksiä kahdesta opiskelijoiden tekemästä Joupiskan rinneravintolaa

Lisätiedot

A274101 TIETORAKENTEET JA ALGORITMIT

A274101 TIETORAKENTEET JA ALGORITMIT A274101 TIETORAKENTEET JA ALGORITMIT PERUSTIETORAKENTEET LISTA, PINO, JONO, PAKKA ABSTRAKTI TIETOTYYPPI Tietotyyppi on abstrakti, kun se on määritelty (esim. matemaattisesti) ottamatta kantaa varsinaiseen

Lisätiedot

Zeon PDF Driver Trial

Zeon PDF Driver Trial Matlab-harjoitus 2: Kuvaajien piirto, skriptit ja funktiot. Matlabohjelmoinnin perusteita Numeerinen integrointi trapezoidaalimenetelmällä voidaan tehdä komennolla trapz. Esimerkki: Vaimenevan eksponentiaalin

Lisätiedot

Tietueet. Tietueiden määrittely

Tietueet. Tietueiden määrittely Tietueet Tietueiden määrittely Tietue on tietorakenne, joka kokoaa yhteen eri tyyppistä tietoa yhdeksi asiakokonaisuudeksi. Tähän kokonaisuuteen voidaan viitata yhteisellä nimellä. Auttaa ohjelmoijaa järjestelemään

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 28.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 28.2.2011 1 / 46 Ohjelmointiprojektin vaiheet 1. Määrittely 2. Ohjelman suunnittelu (ohjelman rakenne ja ohjelman

Lisätiedot

Java-kielen perusteita

Java-kielen perusteita Java-kielen perusteita Toistorakenne (while, do-while, for) 1 While- lause while-lauseen rakenne on seuraava: while (ehtolauseke) lause Kun ehtolausekkeen arvo on totta, lause suoritetaan. Lause suoritetaan

Lisätiedot

1.1 Pino (stack) Koodiluonnos. Graafinen esitys ...

1.1 Pino (stack) Koodiluonnos. Graafinen esitys ... 1. Tietorakenteet Tietorakenteet organisoivat samankaltaisten olioiden muodostaman tietojoukon. Tämä järjestys voidaan saada aikaan monin tavoin, esim. Keräämällä oliot taulukkoon. Liittämällä olioihin

Lisätiedot

815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset

815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 5 Vastaukset Harjoituksen aiheena ovat aliohjelmat ja abstraktit tietotyypit sekä olio-ohjelmointi. Tehtävät tehdään C-, C++- ja Java-kielillä.

Lisätiedot

Luento 5. Timo Savola. 28. huhtikuuta 2006

Luento 5. Timo Savola. 28. huhtikuuta 2006 UNIX-käyttöjärjestelmä Luento 5 Timo Savola 28. huhtikuuta 2006 Osa I Shell-ohjelmointi Ehtolause Lausekkeet suoritetaan jos ehtolausekkeen paluuarvo on 0 if ehtolauseke then lauseke

Lisätiedot

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python 8. marraskuuta 2010 Ohjelmointi Perusteet Peruskäsitteitä Olio-ohjelmointi Pythonin alkeet Esittely Esimerkkejä Muuttujat

Lisätiedot

Algoritmit. Ohjelman tekemisen hahmottamisessa käytetään

Algoritmit. Ohjelman tekemisen hahmottamisessa käytetään Ohjelmointi Ohjelmoinnissa koneelle annetaan tarkkoja käskyjä siitä, mitä koneen tulisi tehdä. Ohjelmointikieliä on olemassa useita satoja. Ohjelmoinnissa on oleellista asioiden hyvä suunnittelu etukäteen.

Lisätiedot

Perinteiset tietokoneohjelmat alkavat pääohjelmasta, c:ssä main(), jossa edetään rivi riviltä ja käsky käskyltä.

Perinteiset tietokoneohjelmat alkavat pääohjelmasta, c:ssä main(), jossa edetään rivi riviltä ja käsky käskyltä. TIETOKONEOHJELMIEN RAKENNE Perinteiset tietokoneohjelmat alkavat pääohjelmasta, c:ssä main(), jossa edetään rivi riviltä ja käsky käskyltä. Teollisuusautomaation ohjelmiin on lainattu runsaasti perinteisen

Lisätiedot

Tekstinkäsittelyn jatko Error! Use the Home tab to apply Otsikko 1 to the text that you want to appear here. KSAO Liiketalous 1

Tekstinkäsittelyn jatko Error! Use the Home tab to apply Otsikko 1 to the text that you want to appear here. KSAO Liiketalous 1 KSAO Liiketalous 1 Lomakkeet Lomake on asiakirja, joka sisältää täyttämistä ohjaavia tietoja tai merkintöjä. Wordin lomakekenttä-toiminnolla luodaan näytöllä täytettäviä lomakkeita tai tulostettavia lomakepohjia.

Lisätiedot

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen:

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen: Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Microsoft SQL käyttö Yleistä VisualStudiosta Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen: - sovellushallintaan -

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 9.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 9.2.2009 1 / 35 Listat Esimerkki: halutaan kirjoittaa ohjelma, joka lukee käyttäjältä 30 lämpötilaa. Kun lämpötilat

Lisätiedot

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti: 1 (7) Tiedon lukeminen näppäimistöltä Scanner-luokan avulla Miten ohjelma saa käyttöönsä käyttäjän kirjoittamaa tekstiä? Järjestelmässä on olemassa ns. syöttöpuskuri näppäimistöä varten. Syöttöpuskuri

Lisätiedot

Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten,

Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten, Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten, että se pystyy suorittamaan kaikki mahdolliset algoritmit?

Lisätiedot

C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa.

C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukot C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukon muuttujilla (muistipaikoilla) on yhteinen nimi. Jokaiseen yksittäiseen

Lisätiedot

Ongelma(t): Miten jollakin korkeamman tason ohjelmointikielellä esitetty algoritmi saadaan suoritettua mikro-ohjelmoitavalla tietokoneella ja siinä

Ongelma(t): Miten jollakin korkeamman tason ohjelmointikielellä esitetty algoritmi saadaan suoritettua mikro-ohjelmoitavalla tietokoneella ja siinä Ongelma(t): Miten jollakin korkeamman tason ohjelmointikielellä esitetty algoritmi saadaan suoritettua mikro-ohjelmoitavalla tietokoneella ja siinä olevilla komponenteilla? Voisiko jollakin ohjelmointikielellä

Lisätiedot

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b

Pythonin Kertaus. Cse-a1130. Tietotekniikka Sovelluksissa. Versio 0.01b Pythonin Kertaus Cse-a1130 Tietotekniikka Sovelluksissa Versio 0.01b Listat 1/2 esimerkkejä listan peruskäytöstä. > lista=['kala','kukko','kissa','koira'] ['kala','kukko','kissa','koira'] >lista.append('kana')

Lisätiedot

TIETOKONEEN ASETUKSILLA PARANNAT KÄYTETTÄVYYTTÄ

TIETOKONEEN ASETUKSILLA PARANNAT KÄYTETTÄVYYTTÄ TIETOKONEEN ASETUKSILLA PARANNAT KÄYTETTÄVYYTTÄ Windows XP-käyttöjärjestelmän asetuksilla sekä Word-asetuksilla voit vaikuttaa tietokoneen näytön ulkoasuun, selkeyteen ja helppokäyttöisyyteen.. 1) ASETUKSET

Lisätiedot

Tietotyypit ja operaattorit

Tietotyypit ja operaattorit Tietotyypit ja operaattorit Luennossa tarkastellaan yksinkertaisten tietotyyppien int, double ja char muunnoksia tyypistä toiseen sekä esitellään uusia operaatioita. Numeeriset tietotyypit ja muunnos Merkkitieto

Lisätiedot

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari 1 1. JOHDANTO 1.1 Määritelmiä 1.2 Tietorakenteen ja algoritmin valinta 1.3 Algoritmit ja tiedon määrä 1.4 Tietorakenteet ja toiminnot 1.5 Esimerkki:

Lisätiedot

C# Windows ohjelmointi perusopas

C# Windows ohjelmointi perusopas Paavo Räisänen C# Windows ohjelmointi perusopas www.ohjelmoimaan.net Tätä opasta saa vapaasti kopioida, tulostaa ja levittää ei kaupallisissa tarkoituksissa. Kuitenkaan omille nettisivuille opasta ei saa

Lisätiedot

Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto

Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto Condess ratamestariohjelman käyttö Aloitus ja alkumäärittelyt Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto Kun kysytään kilpailun nimeä, syötä kuvaava nimi. Samaa nimeä käytetään oletuksena

Lisätiedot

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys Loogisia operaatioita - esimerkkejä Tänään on lämmin päivä ja perjantai Eilen satoi ja oli keskiviikko tai tänään on tiistai. On perjantai ja kello on yli 13 Ei ole tiistai tai ei sada. Ei pidä paikkaansa,

Lisätiedot

Condes. Quick Start opas. Suunnistuksen ratamestariohjelmisto. Versio 8. Quick Start - opas Condes 8. olfellows www.olfellows.fi 1.

Condes. Quick Start opas. Suunnistuksen ratamestariohjelmisto. Versio 8. Quick Start - opas Condes 8. olfellows www.olfellows.fi 1. Condes Suunnistuksen ratamestariohjelmisto Versio 8 Quick Start opas Yhteystiedot: olfellows Jouni Laaksonen Poijukuja 4 21120 RAISIO Sähköposti: jouni.laaksonen@olfellows.fi www.olfellows.fi olfellows

Lisätiedot

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python 31. tammikuuta 2009 Ohjelmointi Perusteet Pythonin alkeet Esittely Esimerkkejä Muuttujat Peruskäsitteitä Käsittely

Lisätiedot

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Viimeksi muokattu 5. toukokuuta 2012 Maastotietokannan torrent-jakeluun sisältyy yli 5000 zip-arkistoa,

Lisätiedot

Autentikoivan lähtevän postin palvelimen asetukset

Autentikoivan lähtevän postin palvelimen asetukset Autentikoivan lähtevän postin palvelimen asetukset - Avaa Työkalut valikko ja valitse Tilien asetukset - Valitse vasemman reunan lokerosta Lähtevän postin palvelin (SM - Valitse listasta palvelin, jonka

Lisätiedot

MITÄ JAVASCRIPT ON?...3

MITÄ JAVASCRIPT ON?...3 JavaScript MITÄ JAVASCRIPT ON?...3 YLEISTÄ JAVASCRIPTIN SYNTAKSISTA...3 KÄSKYSANAT JA MUUT VARATUT SANAT...3 MUUTTUJIEN, FUNKTIOIDEN JA LUOKKIEN NIMISSÄ...3 HTML-TAGEIHIN VIITTAAVISSA METODINIMISSÄ...3

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman

Lisätiedot

GeoGebra-harjoituksia malu-opettajille

GeoGebra-harjoituksia malu-opettajille GeoGebra-harjoituksia malu-opettajille 1. Ohjelman kielen vaihtaminen Mikäli ohjelma ei syystä tai toisesta avaudu toivomallasi kielellä, voit vaihtaa ohjelman käyttöliittymän kielen seuraavasti: 2. Fonttikoon

Lisätiedot

Tekstinkäsittely 1. Peruskäyttö. Tietotekniikan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen

Tekstinkäsittely 1. Peruskäyttö. Tietotekniikan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen Tekstinkäsittely 1 Peruskäyttö Tavoitteet ja sisältö Tavoite Lyhyen asiakirjan kirjoitustaito Word-tekstinkäsittelyohjelmalla Sisältö Tekstinkäsittelyohjelman esittely Tekstinkäsittelyprosessi Tekstin

Lisätiedot

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin Ohjausjärjestelmien jatkokurssi Visual Basic vinkkejä ohjelmointiin http://www.techsoft.fi/oskillaattoripiirit.htm http://www.mol.fi/paikat/job.do?lang=fi&jobid=7852109&index=240&anchor=7852109 Yksiköt

Lisätiedot

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen Metodit Metodien määrittely Metodin parametrit ja paluuarvo Metodien suorittaminen eli kutsuminen Metodien kuormittaminen 1 Mikä on metodi? Metodi on luokan sisällä oleva yhteenkuuluvien toimintojen kokonaisuus

Lisätiedot

Ksenos Prime Käyttäjän opas

Ksenos Prime Käyttäjän opas Ksenos Prime Käyttäjän opas Versio 11.301 Turun Turvatekniikka Oy 2011 Selaa tallenteita. Tallenteiden selaaminen tapahtuu samassa tilassa kuin livekuvan katselu. Voit raahata hiirellä aikajanaa tai käyttää

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 1.4.2009 T-106.1208 Ohjelmoinnin perusteet Y 1.4.2009 1 / 56 Tentti Ensimmäinen tenttimahdollisuus on pe 8.5. klo 13:00 17:00 päärakennuksessa. Tämän jälkeen

Lisätiedot

Tietorakenteet ja algoritmit - syksy 2015 1

Tietorakenteet ja algoritmit - syksy 2015 1 Tietorakenteet ja algoritmit - syksy 2015 1 Tietorakenteet ja algoritmit - syksy 2015 2 Tietorakenteet ja algoritmit Johdanto Ari Korhonen Tietorakenteet ja algoritmit - syksy 2015 1. JOHDANTO 1.1 Määritelmiä

Lisätiedot

Java kahdessa tunnissa. Jyry Suvilehto

Java kahdessa tunnissa. Jyry Suvilehto Java kahdessa tunnissa Jyry Suvilehto Ohjelma Ohjelmointiasioita alkeista nippelitietoon n. 45 min Tauko 10 min Oliot, luokat ja muut kummajaiset n. 45 min Kysykää Sisältöä ei oikeasti ole 2x45 min täytteeksi,

Lisätiedot

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100 Tiedonsiirtokäskyt LOAD LOAD-käsky toimii jälkimmäisestä operandista ensimmäiseen. Ensimmäisen operandin pitää olla rekisteri, toinen voi olla rekisteri, vakio tai muistiosoite (myös muuttujat ovat muistiosoitteita).

Lisätiedot

etunimi, sukunimi ja opiskelijanumero ja näillä

etunimi, sukunimi ja opiskelijanumero ja näillä Sisällys 1. Algoritmi Algoritmin määritelmä. Aiheen pariin johdatteleva esimerkki. ja operaatiot (sijoitus, aritmetiikka ja vertailu). Algoritmista ohjelmaksi. 1.1 1.2 Algoritmin määritelmä Ohjelmointi

Lisätiedot

Ajokorttimoduuli Moduuli 2. - Laitteenkäyttö ja tiedonhallinta. Harjoitus 1

Ajokorttimoduuli Moduuli 2. - Laitteenkäyttö ja tiedonhallinta. Harjoitus 1 Ajokorttimoduuli Moduuli 2 - Laitteenkäyttö ja tiedonhallinta Harjoitus 1 Tämän harjoituksen avulla opit alustamaan levykkeesi (voit käyttää levykkeen sijasta myös USBmuistitikkua). Harjoitus tehdään Resurssienhallinnassa.

Lisätiedot

Kielioppia: toisin kuin Javassa

Kielioppia: toisin kuin Javassa Object Pascal Pascal kielen oliolaajennus (Inprise/Borland:n oma) luokat Voit uudelleenkäyttää luomiasi objekteja esim. komponentteja Periytyminen Kielioppia: toisin kuin Javassa Ei eroa isojen ja pienien

Lisätiedot

Pikaohje formaatin valmistamiseen

Pikaohje formaatin valmistamiseen Pikaohje formaatin valmistamiseen Esko Otava Oy ver.1.0 Pääikkunasta (tulostusikkunasta) valitaan Cards-Show cards manager Paina Add 2 Paina New Kortinsuunnitteluikkuna on jaettu kolmeen osaan: Vasemmalla

Lisätiedot

Siirtyminen Outlook 2010 -versioon

Siirtyminen Outlook 2010 -versioon Tämän oppaan sisältö Microsoft Microsoft Outlook 2010 näyttää hyvin erilaiselta kuin Outlook 2003. Tämän oppaan tarkoituksena on helpottaa uuden ohjelman opiskelua. Seuraavassa on tietoja uuden käyttöliittymän

Lisätiedot

Merkkijono määritellään kuten muutkin taulukot, mutta tilaa on varattava yksi ylimääräinen paikka lopetusmerkille:

Merkkijono määritellään kuten muutkin taulukot, mutta tilaa on varattava yksi ylimääräinen paikka lopetusmerkille: Merkkijonot C-kielessä merkkijono on taulukko, jonka alkiot ovat char -tyyppiä. Taulukon viimeiseksi merkiksi tulee merkki '\0', joka ilmaisee merkkijonon loppumisen. Merkkijono määritellään kuten muutkin

Lisätiedot

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4 Sisällys 12. Näppäimistöltä lukeminen Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä.. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit. Scanner-luokka.

Lisätiedot

Taulukot. 2002 Päivi Vartiainen 1

Taulukot. 2002 Päivi Vartiainen 1 Taulukot Taulukon lisääminen FrontPagessa tapahtuu samalla tavoin kuin Word tekstinkäsittelyohjelmassakin. Valitse vakiotyökaluriviltä Lisää taulukko painike. Kun olet napsauttanut painikkeen alas voit

Lisätiedot

Osoitin ja viittaus C++:ssa

Osoitin ja viittaus C++:ssa Osoitin ja viittaus C++:ssa Osoitin yksinkertaiseen tietotyyppiin Osoitin on muuttuja, joka sisältää jonkin toisen samantyyppisen muuttujan osoitteen. Ohessa on esimerkkiohjelma, jossa määritellään kokonaislukumuuttuja

Lisätiedot

Harjoitustyö: virtuaalikone

Harjoitustyö: virtuaalikone Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman

Lisätiedot

Muuttujien roolit Kiintoarvo cin >> r;

Muuttujien roolit Kiintoarvo cin >> r; Muuttujien roolit Muuttujilla on ohjelmissa eräitä tyypillisiä käyttötapoja, joita kutsutaan muuttujien rooleiksi. Esimerkiksi muuttuja, jonka arvoa ei muuteta enää kertaakaan muuttujan alustamisen jälkeen,

Lisätiedot

Kieliversiointityökalu Java-ohjelmistoon. Ohje

Kieliversiointityökalu Java-ohjelmistoon. Ohje Kieliversiointityökalu Java-ohjelmistoon Ohje 2/6 SISÄLLYSLUETTELO 1 YLEISTÄ OHJELMASTA... 3 2 PÄÄ-IKKUNA...4 3 YLÄVALIKKO... 4 3.1 TIEDOSTO... 4 3.2 TOIMINTO... 4 3.3 ASETUKSET... 5 3.4 OHJE... 5 4 VÄLILEHDET...5

Lisätiedot

MICROSOFT EXCEL 2010

MICROSOFT EXCEL 2010 1 MICROSOFT EXCEL 2010 Taulukkolaskentaohjelman jatkokurssin tärkeitä asioita 2 Taulukkolaskentaohjelmalla voit Käyttää tietokonetta ruutupaperin ja taskulaskimen korvaajana Laatia helposti ylläpidettäviä

Lisätiedot

Tiedostojen lataaminen netistä ja asentaminen

Tiedostojen lataaminen netistä ja asentaminen s. 1/5 Tiedostojen lataaminen netistä ja asentaminen Yleistä Internetissä on paljon hyödyllisiä ilmaisohjelmia, jotka voi ladata ja asentaa omalle koneelle. Osa ohjelmista löytyy suomenkielisiltä sivuilta,

Lisätiedot

ASCII-taidetta. Intro: Python

ASCII-taidetta. Intro: Python Python 1 ASCII-taidetta All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do.

Lisätiedot

Vertailulauseet. Ehtolausekkeet. Vertailulauseet. Vertailulauseet. if-lauseke. if-lauseke. Javan perusteet 2004

Vertailulauseet. Ehtolausekkeet. Vertailulauseet. Vertailulauseet. if-lauseke. if-lauseke. Javan perusteet 2004 Vertailulauseet Ehtolausekkeet Ehdot, valintalausekkeet Boolean-algebra == yhtäsuuruus!= erisuuruus < pienempi suurempi >= suurempi tai yhtäsuuri Esimerkkejä: int i=7; int j=10;

Lisätiedot

SQL Buddy JAMK Labranet Wiki

SQL Buddy JAMK Labranet Wiki Page 1 of 9 SQL Buddy JAMK Labranet Wiki Sisällysluettelo Yleistä SQL Buddy:sta kotisivu :http://sqlbuddy.com/ SQL Buddy on kevyt hallintatyökalu MySQL-tietokannalle. Järjestelmävaatimukset Serverin vaatimukset

Lisätiedot

Enigmail-opas. Asennus. Avainten hallinta. Avainparin luominen

Enigmail-opas. Asennus. Avainten hallinta. Avainparin luominen Enigmail-opas Enigmail on Mozilla Thunderbird ja Mozilla Seamonkey -ohjelmille tehty liitännäinen GPG-salausohjelmiston käyttöä varten. Sitä käytetään etenkin Thunderbirdin kanssa sähköpostin salaamiseen

Lisätiedot

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus) VISUAL BASIC OHJEITA Kutsuttava ohjelma alkaa kometoparilla Sub... End Sub Sub ohjelmanimi()...koodia... End Sub Muuttujat Muuttujan esittely Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency,

Lisätiedot

Tilastolliset ohjelmistot 805340A. Pinja Pikkuhookana

Tilastolliset ohjelmistot 805340A. Pinja Pikkuhookana Tilastolliset ohjelmistot 805340A Pinja Pikkuhookana Sisältö 1 SPSS 1.1 Yleistä 1.2 Aineiston syöttäminen 1.3 Aineistoon tutustuminen 1.4 Kuvien piirtäminen 1.5 Kuvien muokkaaminen 1.6 Aineistojen muokkaaminen

Lisätiedot

11.4. Context-free kielet 1 / 17

11.4. Context-free kielet 1 / 17 11.4. Context-free kielet 1 / 17 Määritelmä Tyypin 2 kielioppi (lauseyhteysvapaa, context free): jos jokainenp :n sääntö on muotoa A w, missäa V \V T jaw V. Context-free kielet ja kieliopit ovat tärkeitä

Lisätiedot

2013 -merkistä tunnistat uudet ominaisuudet

2013 -merkistä tunnistat uudet ominaisuudet Tähän käsikirjaan on koottu Ecomiin liittyviä yleisiä aiheita ja toimintatapoja, joiden opiskelemisesta on hyötyä kaikille Ecomin käyttäjille. 2013 2013 -merkistä tunnistat uudet ominaisuudet Ohjeita käsikirjan

Lisätiedot

Ohjeita Siemens Step7, Omron CX Programmer käyttöön

Ohjeita Siemens Step7, Omron CX Programmer käyttöön Ohjeita Siemens Step7, Omron CX Programmer käyttöön Sisällysluettelo 1 Siemens Step7 Manager...1 1.1 Laitteistomäärittely...1 1.2 Ohjelmalohkon luonti ja toteutus...2 1.3 Ohjelman kutsu...3 2 CX-Programmer...4

Lisätiedot

815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset

815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset 815338A Ohjelmointikielten periaatteet 2014-2015. Harjoitus 7 Vastaukset Harjoituksen aiheena on funktionaalinen ohjelmointi Scheme- ja Haskell-kielillä. Voit suorittaa ohjelmat osoitteessa https://ideone.com/

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 24.1.2011 T-106.1208 Ohjelmoinnin perusteet Y 24.1.2011 1 / 36 Luentopalaute kännykällä alkaa tänään! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti Vast

Lisätiedot

Basware Supplier Portal

Basware Supplier Portal Basware Supplier Portal Pikaohje Toimittajille (Toukokuu 2011) Prosessin yleiskatsaus Basware Supplier Portal on tarkoitettu toimittajaorganisaatioille (joita kutsutaan jäljempänä toimittajiksi). Järjestelmän

Lisätiedot

2 Konekieli, aliohjelmat, keskeytykset

2 Konekieli, aliohjelmat, keskeytykset ITK145 Käyttöjärjestelmät, kesä 2005 Tenttitärppejä Tässä on lueteltu suurin piirtein kaikki vuosina 2003-2005 kurssin tenteissä kysytyt kysymykset, ja mukana on myös muutama uusi. Jokaisessa kysymyksessä

Lisätiedot

Oppilaan pikaopas. Project 2013 käyttöliittymä ja näkymät

Oppilaan pikaopas. Project 2013 käyttöliittymä ja näkymät 1 Oppilaan pikaopas Project 2013 käyttöliittymä ja näkymät Kun avaat Project 2013 -ohjelman, näet ensimmäisenä pelkistetyn näkymän. Uusi Project 2013 voi auttaa projektinhallinnassa kuten esim. projektitietojen

Lisätiedot

Tietokannat PERUSMATERIAALI Microsoft Access 2007 Kieliversio: suomi Materiaaliversio 1.0 päivitetty 8.6.2009 www.piuha.fi materiaalimyynti@piuha.

Tietokannat PERUSMATERIAALI Microsoft Access 2007 Kieliversio: suomi Materiaaliversio 1.0 päivitetty 8.6.2009 www.piuha.fi materiaalimyynti@piuha. Tietokannat PERUSMATERIAALI Microsoft Access 2007 Kieliversio: suomi Materiaaliversio 1.0 päivitetty 8.6.2009 materiaalimyynti@piuha.fi Tämän materiaalin kopioiminen ilman tekijän lupaa kielletään tekijänoikeuslain

Lisätiedot

815338A Ohjelmointikielten periaatteet 2014-2015

815338A Ohjelmointikielten periaatteet 2014-2015 815338A Ohjelmointikielten periaatteet 2014-2015 X Skriptiohjelmointi Sisältö 1. Johdanto 2. Skriptikielten yleispiirteitä 3. Python 815338A Ohjelmointikielten periaatteet, Skriptiohjelmointi 2 X.1 Johdanto

Lisätiedot

BLOGGER. ohjeita blogin pitämiseen Googlen Bloggerilla

BLOGGER. ohjeita blogin pitämiseen Googlen Bloggerilla BLOGGER ohjeita blogin pitämiseen Googlen Bloggerilla Sisältö Blogin luominen... 1 Uuden blogitekstin kirjoittaminen... 4 Kuvan lisääminen blogitekstiin... 5 Lisää kuva omalta koneelta... 6 Lisää kuva

Lisätiedot

1. Algoritmi 1.1 Sisällys Algoritmin määritelmä. Aiheen pariin johdatteleva esimerkki. Muuttujat ja operaatiot (sijoitus, aritmetiikka ja vertailu). Algoritmista ohjelmaksi. 1.2 Algoritmin määritelmä Ohjelmointi

Lisätiedot