Dynaamista ja joustavaa ohjelmointia - maukasta makrokielellä
|
|
- Anita Sala
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Markku Suni Turun ammattikorkeakoulu Dynaamista ja joustavaa ohjelmointia - maukasta makrokielellä
2 SAS Makrokieli SAS Makrokieli on kieli SAS-kielen laajennus datavaihetta muistuttavia lauseita ja funktioita makroprosessorin käynnistää ohjelmasta löytyvä %nimi tai &nimi
3 SAS Makrokieli Makrokielen asiat tapahtuvat ohjelmaa käännettäessä makroprosessorin työn tulos näkyy kääntäjälle Idea: yksi nimi korvautuu pitemmällä tekstillä moneen kertaan monessa kohtaa ohjelmaa mahdollisesti vaihtelevasti kyse on aina tekstistä, merkkijonosta Tämä tapahtuu ohjelmaa käännettäessä
4 SAS Makrokielen teoriaa SAS-ohjelma lähetetty suoritukseen: SUBMIT Scanner selaa ohjelmaa Tokenizer etsii kokonaisuutta (nimi tms.) Löytyy merkki % tai & Makroprosessori herätetään; lukee merkkiä seuraavan sanan Makroprosessori toimii sanan edellyttämällä tavalla - mahdollisesti korvaa sanan tekstillä - päivittää taulujaan - lukee sanan uudelleen, tekee em. operaatiot - hävittää lukemansa sanan Tokenizer jatkaa merkkiä seuraavasta kohdasta
5 Voidaan määritellä melkein milloin tahansa Sisältää saman arvon kunnes eksplisiittisesti muutetaan muuten sama koko ohjelman (istunnon) ajan Määrittely ja asetus: %let nimi = uusi ; Viittaus: Makromuuttujat &nimi Havaitaan: &nimi.. Ei: &nimi Kyseinen kohta ohjelmassa korvautuu makron arvolla Makron arvo on aina merkkijono!! SAS-kääntäjä voi ymmärtää sen lukuna
6 Makromuuttujat Makromuuttuja voi sisältää SAS-ohjelmaa: %let koodi = %str( proc freq; table sex * vastaus; ); %str-funktion sisällä puolipisteet eivät päätä arvoa Makromuuttujan tyhjennys: %let koodi = ; Sisäkkäistys: %let koodi = %str( proc freq; table &var*&var2; ); Muuttujan arvo lokiin: %put &var ;
7 Makromuuttujat Makromuuttuja voi olla yksittäinen sana tai osa sitä: %let nobsi = ; tai %let nobsi = noobs ; proc print data = &tdsto &nobsi; var &idmja maksu korvaus; Makromuuttuja tekstin osana: data &alku.yks ; set tieto&loppu &kirjasto..tiedot; Piste lopettaa makromuuttujan nimen jos sitä ei muuten huomaisi. Huom.: kaksi pistettä: toinen jää paikalleen.
8 Makro Makro on pala koodia, jolle annetaan nimi %macro dsn; data.tiedot %mend dsn; %macro suorita; proc print data = %dsn; %mend suorita;
9 Makro Makro on pala koodia, jolle annetaan nimi %macro dsn; data.tiedot %mend dsn; %macro suorita; proc print data = %dsn; %mend suorita; Nyt käyttö: title1 Tiedosto %dsn käytössä ; %suorita; Makro voi generoida hyvinkin pitkän pätkän koodia Puolipiste ei ole pakollinen makrokutsun jäljessä.
10 Makro ja parametrit Makroon voidaan lisätä parametreja: %macro suorita( tdsto, bymja ); proc print data = &tdsto; by &bymja; %mend suorita;
11 Makroon voidaan lisätä parametreja: %macro suorita( tdsto, bymja ); proc print data = &tdsto; by &bymja; %mend suorita; Kutsussa: Makro ja parametrit %suorita( data.testi, kunta ) %suorita( kunnat, kunta ); Parametreja EI laiteta sitaatteihin (AINA merkkijono). %analyysi( tiedot, 5, maksu, 1 );
12 Makro ja parametrit Parametrit kutsussa pilkuilla erotettuina %suorita( tdsto, bymja ); Puuttuva parametrin arvo korvautuu tyhjällä: %suorita( data.testi ); %suorita(, kunta ); Tällöin parametria vastaava kohta koodia jää tyhjäksi = ei mitään SAS-koodista riippuen voi olla virhe tai sitten ei ole PROC print data = tiedot &nobsi ;
13 Makro ja parametrit Parametrit korvataan siis position perusteella %macro sortti ( tdsto, by1, by2, by3 ); proc sort data = &tdsto ; by &by1 &by2 &by3; Toimii, jos on ainakin BY1 annettu. Muut voi jättää pois. Toinen mahdollinen yleistys: %macro sorttaa ( tdsto, bylista ); prod sort data = &tdsto ; by &bylista; Ja sitten vaan: %sortti ( tiedot, yhtio, alue, konttori ); %sortti ( tiedot, yhtio ); %sorttaa( tiedot, yhtio alue konttori ); %sorttaa( tiedot, yhtio );
14 Makro ja parametrit Makron parametreilla voi olla oletusarvoja: %macro suorita( tdsto=tiedot, bymja=alue);... ; %mend suorita; Ellei parametrille annettu arvoa, käytetään määrityksen oletusarvoa %suorita( tdsto=data.testi, bymja=konttori ); %suorita( tdsto=data.testi ); %suorita( );
15 Makrojen sisäkkäisyys %macro teetdsto; tapa 1 data temp; set data.tiedot; if age >= 20; %mend teetdsto; %macro listaa; proc print data = temp; by &bymja; %mend listaa; %macro analyysi ( bymja ); %* luo tiedosto - kommentti makrossa ; %teetdsto; %* sitten listataan ; %listaa ; %mend analyysi;
16 Makrojen sisäkkäisyys %macro analyysi ( bymja ); tapa 2 %macro teetdsto; data temp; set data.tiedot; if age >= 20; %mend teetdsto; %macro listaa; proc print data = temp; by &bymja; %mend listaa; %* luo tiedosto - kommentti makrossa ; %teetdsto; %* sitten listataan ; %listaa ; %mend analyysi; Makron suoritus määrittelee muita makroja
17 %macro analyysi ( bymja ); tapa 2 %macro teetdsto; data temp; set data.tiedot; if age >= 20; %mend teetdsto; %macro listaa; proc print data = temp; by &bymja; %mend listaa; %* luo tiedosto - kommentti makrossa ; %teetdsto; %* sitten listataan ; %listaa ; %mend analyysi; Makrojen sisäkkäisyys Ja itse ohjelma: %analyysi ( sukupuoli )
18 %macro printtaa( by ); proc print data = tiedot; %if &by = K %then %do; by yhtio; %end; id yhtio; var maksu korvaus; %mend printtaa; Ehdollinen koodi makrossa IF-then-rakenne toimii kuin SAS-kielessä, mutta makron tasolla (ennen käännöstä) Ero: ei sitaatteja merkkijonon ympärille %then-sanan jälkeen tulee makron kutsu (nimi: %suorita ) tai %do... %end
19 Ehdollinen koodi makrossa %macro tabuloi( yhtio ); proc tabulate data = tiedot; where yhtio = &yhtio ; class %if &yhtio ne 42 %then %do; alue piiri %end; myyja ; var maksu korvaus; table %if &yhtio ne 42 %then %do; alue * piiri * %end; myyja, ( maksu korvaus ) * sum; %mend tabuloi; Makrolauseiden ja lausekkeiden taittoon syytä paneutua (luettavuus)
20 Ehdollinen koodi makrossa Vertailussa ero SAS-kieleen nähden: %macro tabuloi( vipu, tdsto ); %if &vipu ne %then %do; proc tabulate data = &tdsto ;. Run; %end; %else %do; %* Ei siis tabuloida ; /* Ei siis tabuloida */ %end; %mend tabuloi;
21 Ehdollinen koodi makrossa Merkkijonojen kyseessä ollen muista ISOT vs pienet kirjaimet: %if %upcase( &firma ) = TurkuAMK %then %do; Makroprosessorille TurkuAMK ne turkuamk ne TURKUAMK Esim: OPTIONS pageno = 1; %tabuloi( TSK ); options pageno = 1; %tabuloi( Tai ); options pageno = 1; %tabuloi( Bio );
22 Toisto on mahdollista: %macro nimet( nimi, kpl ); Merkkijono ymmärretään lukuna %do n = 1 %to &kpl; &nimi&n Ei tarvita pistettä %end; %mend nimet; Proc print data = tiedot; var %nimet( mja, 4 ); => var mja1 mja2 mja3 mja4 ; Mutta: Toistokoodi makrossa %macro nimet( nimi, kpl ); Merkkijono ymmärretään lukuna %do n = 1 %to &kpl; &nimi.n&n Nyt on piste %end; %mend nimet; Proc print data = tiedot; var %nimet( mja, 4 ); => var mjan1 mjan2 mjan3 mjan4 ;
23 Datavaiheen liittymä Rutiinilla SYMPUT voidaan luoda ja asettaa makromuuttujia: CALL SYMPUT( yksikko_, 042 ); CALL SYMPUT( myksikko_, TSK ); CALL SYMPUT( myhtio_, yhtio ); CALL SYMPUT( mja, arvo ); Makromuuttujan nimi sitaatteihin, arvo samoin Jos arvo on merkkijonomuuttujassa, ei sitaatteja. Arvo saadaan datavaiheen muuttujaan: arvo = SYMGET( &myhtio_ ); Huom: SYMPUTin kutsun jälkeen on oltava RUN; että makromuuttuja olisi käytettävissä ( uusi käännös!! ) Näin luoduista makroista tulee globaaleja
24 Makromuuttuja voidaaan luoda SQL-kyselyssä. SQL-kyselystä puheen ollen... Arvojen lista voisi olla hyödyllinen: data pomot; input nimi $ ; cards; Nilken Murikka ; Proq sql noprint; select quote(nimi) from quit; data palkat; Makromuuttuja ja SQL into :nimet separated by pomot set henre.palkat ( where= ( nimi IN ( &nimet ))); INTO ohjaa tuloksen makromuuttujaan
25 Monimutkaisempaa - rescan Jos löytyy &:n jälkeen toinen &, makroprosessori korvaa && & ja lukee tekstin uudelleen Ja sama jatkuu &&&&x &&&x &&x &x Tätä hyväksikäyttäen voidaan rakentaa epäsuoria makroviittauksia
26 Monimutkaisempaa - rescan %let k010 = TSK ; %let k020 = BIO; %let k030 = TERV ; data a; do koulohj = '010', '020', '030'; do suunta = 1 to 3; do tapaus = 1 to 10; opisk = ranuni(1107)*10; opcred = ranuni(1107)* 80; output a; end; end; end; %macro printti( kohj ); proc tabulate data = a ; where koulohj = "&kohj"; class suunta; var opisk opcred; table luokka, (maksu korvaus)*sum; title Koulohjelma: &&k&kohj, opiskelijain suoritukset"; %mend printti; %printti( 010 ); %printti( 020 ); Mitä tässä tapahtuukaan? %printti( 030 );
27 Monimutkaisempaa - rescan %let k010 = TSK ; %let k020 = BIO; %let k030 = TERV ; data a; do koulohj = '010', '020', '030'; do suunta = 1 to 3; do tapaus = 1 to 10; opisk = ranuni(1107)*10; opcred = ranuni(1107)* 80; output a; end; end; end; %macro printti( kohj ); proc tabulate data = a ; where koulohj = "&kohj"; class suunta; var opisk opcred; table luokka, (maksu korvaus)*sum; title Koulohjelma: &&k&kohj, opiskelijain suoritukset"; %mend printti; %printti( 010 ); &k010 TSK
28 Esimerkki Halutun kuun alku ja loppu : %macro mkuual( pvm ) /* pvm: SAS-päivämäärämuuttuja */ alkukuu = MDY( MONTH( pvm ), 1, YEAR( pvm )); %mend mkuual; %macro mkuulop( pvm ) /* pvm: SAS-päivämäärämuuttuja */ if MONTH( pvm ) = 12 then lopukuu = MDY( 1, 1, YEAR( pvm ) + 1 ) -1; else lopukuu = MDY( MONTH( pvm ) + 1, 1, YEAR( pvm )) -1; %mend mkuulop;
29 Esimerkki Onko kyse testistä vai tuotantoajosta? Kirjastojen nimiä, viitteitä, tms. on hyvä laittaa makromuuttujiin. Ohjelman alussa selvitetään (vaikkapa ajoparametritiedosto lukemalla), onko kyseessä testi vai ei. Asetetaan makromuuttujat sopivasti. %macro alustus; DATA null; INFILE ajoparm; INPUT parametrit ; %* rakennellaan tarvittavat arvot ja sitten muuttujiin; CALL SYMPUT( ymp, TUOT ); CALL SYMPUT(.... ); RUN; %mend alustus; Ja sitten:... SET &ymp..tiedot;...
30 Esimerkki Raportointiohjelma: samantapainen raportti jokaisesta koulutusohjelmasta ja oppiaineesta %macro poimi( kohj, vv ) %* poimitaan ohjelma ja vuosi; data otos; set tieto; WHERE ( kohj = &kohj ) AND (vuosi = &vv); /* tehdään sitä ja tätä */ %mend poimi; %macro raportoi( kohj, vv ) %* raportti; %poimi( &kohj, vv ); %* poiminta ; PROC TABULATE data = otos ; CLASS %if &kohj = 10 %then %do oaine %end; sv ; VAR... RUN; %mend raportoi;
31 Raportointiohjelma: samantapainen raportti jokaisesta koulutusohjelmasta ja oppiaineesta Ja sitten se itse ohjelma: %raportoi( 10, 2011 ); %raportoi( 10, 2012 ); %raportoi( 20, 2011 ); %raportoi( 20, 2012 ); %raportoi( 30, 2011 ); %raportoi( 30, 2012 ); RUN; Esimerkki
32 Esimerkki Proseduurissa TABULATE on paha puute: luokat, joita vastaavia havaintoja ei ole, eivät näy tulosraportissa, eikä voida ilmoittaa, mitä arvoja siellä voisi olla (vrt proseduurien CHART ja GCHART optio MIDPOINTS). Q&D-ratkaisu: liitetään alkuperäisen havaintoaineiston jatkoksi tyhjä aineisto, jossa on halutut luokkamuuttujien arvot, mutta ei muuta.
33 Esimerkki %macro tabulk( x ) / parmbuff ; %let stop = %length( &syspbuff ); %let seti = %scan( &syspbuff, 1 ); %let nimi = %scan( &syspbuff, 2 ); data _mz_ ( keep = &nimi ); %do I = 3 %to &stop; %let arvo = %scan( &syspbuff, &i ); %if &arvo ne %then %do; &nimi = &arvo; output; %end; %else %let i = &stop; %end; proc append base = &seti data = _mz_; %mend tabulk;
34 Esimerkki Makron käyttö data koe; input luokka markka myynti; cards; ; %tabulk( koe, luokka, 1, 2, 3, 4, 5 ); proc tabulate data = koe; class luokka; var markka myynti; table luokka all, ( markka myynti )* sum/ misstext = Puuttuu ;
35 Esimerkki Ja tulokseksi tulee:
36 Makroihin liittyviä asioita MLOGIC - NOMLOGIC Jos päällä, makroprosessori listaa lokiin makromuuttujien arvojen mukaan tapahtuneet haarautumisensa MPRINT - NOMPRINT Jos päällä, makroprosessori listaa lokiin makroista generoituneet SAS-lauseet (huom: ei aina kovin selvästi) SAS tarjoaa käyttöön koko joukon automaattisesti asetettuja makromuuttujia, esim: SYSDATE systeemin tuntema päivämäärä (tänään: 11OCT12 ) SYSLAST - viimeksi luodun SAS-tiedoston nimi muodossa viite.nimi SYSTIME - tämän SAS-istunnon tai työn aloitusajankohdan (hh:mm).
37 Yhteenveto Pieni sana, %macro, antaa valtavasti vaihtelua ohjelmaan. Makrojen ja makromuuttujien avulla voi ohjelmista tehdä joustavampia helpompia ylläpitää selkeitä: muuttuvat asiat ohjelman alussa hyvin nähtävillä lyhyempiä paremmin uudelleenkäytettäviä lisäämättä kohtuuttomasti ohjelman tekemisen vaikeutta
38 This is the end The Doors
Ruokahalu kasvaa syödessä lisää makrokielen herkkuja
Turun ammattikorkeakoulu Ruokahalu kasvaa syödessä lisää makrokielen herkkuja SAS Makrokieli - kertaus Makrokielen asiat tapahtuvat ohjelmaa käännettäessä makroprosessorin työn tulos näkyy kääntäjälle
LisätiedotMakrojen mystinen maailma lyhyt oppimäärä
Makrojen mystinen maailma lyhyt oppimäärä Makrot osana SAS-teknologiaa Yleiskuva Jouni Javanainen Aureolis lyhyesti Aureolis on jatkuvia Business Intelligence -palveluita tuottava asiantuntijaorganisaatio
LisätiedotDatavaiheen taikoja - tietäjien perintönä www.turkuamk.fi
Markku Suni Factotum emeritus Turun ammattikorkeakoulu Datavaiheen taikoja - tietäjien perintönä SAS Datavaihe lukee lauseiden SET ja INPUT avulla Datavaihe tulostaa lauseiden OUTPUT ja PUT avulla Vaan
LisätiedotDATA-vaiheen ohjelmoijan yleissivistys helposti unohtuvia asioita
Markku Suni Factotum emeritus Turun ammattikorkeakoulu DATA-vaiheen ohjelmoijan yleissivistys helposti unohtuvia asioita Aivan ensimmäiseksi haluan kiittää kuulijoita kuuntelusta Kuten tunnettu poliitikko
LisätiedotIDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit
IDL - proseduurit 25. huhtikuuta 2017 Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,
LisätiedotATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014
18. syyskuuta 2014 IDL - proseduurit Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,
Lisätiedot815338A 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ätiedotLuento 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ätiedotHarjoitustyö: virtuaalikone
Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman
LisätiedotDictionary taulut. Miten perus metadataa käytetään koodillisesti joustavuutta lisäämään
Dictionary taulut Miten perus metadataa käytetään koodillisesti joustavuutta lisäämään Metadata Base SASissa Metadata on käytettävissä jokaisessa SAS istunnossa, oli sitten kyse yksittäiskäyttäjästä omalla
LisätiedotEhto- 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ätiedotKoottu 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ätiedotSELECT-lauseen perusmuoto
SQL: Tiedonhaku SELECT-lauseen perusmuoto SELECT FROM WHERE ; määrittää ne sarakkeet, joiden halutaan näkyvän kyselyn vastauksessa sisältää
Lisätiedot815338A Ohjelmointikielten periaatteet Harjoitus 6 Vastaukset
815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 6 Vastaukset Harjoituksen aiheena on funktionaalinen ohjelmointi Scheme- ja Haskell-kielillä. Voit suorittaa ohjelmat osoitteessa https://ideone.com/
LisätiedotTietotyypit 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ätiedotOhjelmointiharjoituksia Arduino-ympäristössä
Ohjelmointiharjoituksia Arduino-ympäristössä Yleistä Arduino-sovelluksen rakenne Syntaksi ja käytännöt Esimerkki ohjelman rakenteesta Muuttujat ja tietotyypit Tietotyypit Esimerkkejä tietotyypeistä Ehtolauseet
LisätiedotTäysautomatisoitu raportointiympäristö. Joni-Petteri Paavilainen Jani Alatalo
Täysautomatisoitu raportointiympäristö Joni-Petteri Paavilainen Jani Alatalo Miksi tähän ryhdyttiin? Miten asiassa edettiin? Vaatimuksia Reaaliaikaisuus n 15 min Hallitut käyttöoikeudet Raportin tekijöillä
LisätiedotJava-kielen perusteet
Java-kielen perusteet String-merkkijonoluokka 1 Ohjelmointikielten merkkijonot Merkkijonot ja niiden käsittely on välttämätöntä ohjelmoinnissa Valitettavasti ohjelmointikielten tekijät eivät tätä ole ottaneet
LisätiedotSAS/IML käyttö ekonometristen mallien tilastollisessa päättelyssä. Antti Suoperä 16.11.2009
SAS/IML käyttö ekonometristen mallien tilastollisessa päättelyssä Antti Suoperä 16.11.2009 SAS/IML käyttö ekonometristen mallien tilastollisessa päättelyssä: Matriisi ja vektori laskennan ohjelmisto edellyttää
LisätiedotPHP tehtävä 3 Atte Pekarinen TIKT13A 4.12.2014
PHP-kielen perusteet 3.1 Mitä tarkoittaan heredoc? Milloin sitä kannattaa käyttää? Kirjoita esimerkki sen käyttämisestä. Heredoc on ominaisuus PHP-koodaamisessa, jolla voidaan kirjoittaa pitkiä tekstejä
LisätiedotProseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008
Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT Jouni Huotari S2008 2 Proseduurit Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)
LisätiedotPROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009
PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009 PROSEDUURIT Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)
LisätiedotHieman linkkejä: http://cs.stadia.fi/~kuivanen/linux/kom.php, lyhyt ohje komentoriviohjelmointiin.
Linux-harjoitus 9 Linuxin mukana tulevat komentotulkit (mm. bash, tcsh, ksh, jne ) sisältävät ohjelmointikielen, joka on varsin tehokas ja ilmaisuvoimainen. Tähän yhdistettynä unix-maailmasta tutut tehokkaat
LisätiedotSQL-perusteet, SELECT-, INSERT-, CREATE-lauseet
SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet A271117, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin
LisätiedotJava-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ätiedotTähtitieteen käytännön menetelmiä Kevät 2009 Luento 5: Python
Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 5: Python 7. helmikuuta 2009 Ohjelmoinnista Ohjelman peruselementtejä Koodin kommentointi Lohkorakenne Ohjausrakenteet If For While Try Funktiot Käyttö
LisätiedotMatlab- ja Maple- ohjelmointi
Perusasioita 2. helmikuuta 2005 Matlab- ja Maple- ohjelmointi Yleistä losoaa ja erityisesti Numsym05-kurssin tarpeita palvellee parhaiten, jos esitän asian rinnakkain Maple:n ja Matlab:n kannalta. Ohjelmien
LisätiedotJava-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ätiedotHELIA TIKO-05 1 (17) ICT03D Tieto ja tiedon varastointi Räty, Virkki
HELIA TIKO-05 1 (17) SQL / DML 4 Alikyselyt...2 Joukko-operaatiot...7 Yhdiste, unioni...8 Leikkaus...9 Erotus... 10 Tietokannan datan muokkaus... 11 Lisäys... 11 Yhden rivin lisääminen... 12 Useamman rivin
LisätiedotTiedot hallintaan PROC CONTENTSilla makroja ja ODS:ää hyödyntäen. Päivi Heimonen ICT-erikoisasiantuntija, Kela SAS Tech Club 24.1.
Tiedot hallintaan PROC CONTENTSilla makroja ja ODS:ää hyödyntäen Päivi Heimonen ICT-erikoisasiantuntija, Kela SAS Tech Club 24.1.2017 Tausta ja tavoite Haaste 1 Tietojen haravoinnin tehostaminen ja helpottaminen
LisätiedotMTT:n sääaineistot ja tietokannat hallintaan SASilla
MTT:n sääaineistot ja tietokannat hallintaan SASilla Tietoiskutilaisuus 21.3.2013. Versio 1.1 Timo Pitkänen MTT:n sääaineistot ja tietokannat hallintaan SASilla Tämän tietoiskumateriaalin tarkoitus on
LisätiedotAlkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)
Alkuarvot ja tyyppimuunnokset (1/5) Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int luku = 123; Alkuarvon on oltava muuttujan tietotyypin mukainen, esimerkiksi int-muuttujilla kokonaisluku,
LisätiedotTAITAJA 2007 ELEKTRONIIKKAFINAALI 31.01-02.02.07 KILPAILIJAN TEHTÄVÄT. Kilpailijan nimi / Nro:
KILPAILIJAN TEHTÄVÄT Kilpailijan nimi / Nro: Tehtävän laatinut: Hannu Laurikainen, Deltabit Oy Kilpailutehtävä Kilpailijalle annetaan tehtävässä tarvittavat ohjelmakoodit. Tämä ohjelma on tehty laitteen
LisätiedotOhjelmoinnin 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ätiedotHELIA 1 (14) Outi Virkki Tiedonhallinta
HELIA 1 (14) Luento Näkymät... 2 Relaatiotyypit... 2 Taulu - Tallennettu relaatio... 3 Näkymä - Virtuaalirelaatio... 3 Tulosrelaatio - Kyselyn tulos... 3 Otetaulut - Tauluun tallennettu kyselyn tulos...
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 10: Paikalliset muuttujat, kirjan tulkki kokonaisuutena (mm. SICP 3.2, 4.1.24.1.6) Riku Saikkonen 22. 11. 2012 Sisältö 1 Ympäristöt: miten paikalliset
LisätiedotKoostefunktiot. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:
Funktiot Koostefunktiot Viisi standardifunktiota: AVG -- keskiarvo MIN -- pienin arvo MAX -- suurin arvo SUM -- summa COUNT-- lukumäärä Esim. montako henkilöä on henkilo-taulussa: SELECT Count(*) AS Lkm
LisätiedotOhjelmassa 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ätiedotTIEDONHALLINTA - SYKSY Luento 8. Saapumisryhmä: Pasi Ranne /9/13 Helsinki Metropolia University of Applied Sciences
TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 8 XX00AA79-3013 TU12S2 Pasi Ranne 25.9.2013 25/9/13 Helsinki Metropolia University of Applied Sciences 1 Harjoitustyö Harjoitustöiden tilanne
LisätiedotListarakenne (ArrayList-luokka)
Listarakenne (ArrayList-luokka) Mikä on lista? Listan määrittely ArrayList-luokan metodeita Listan läpikäynti Listan läpikäynti indeksin avulla Listan läpikäynti iteraattorin avulla Listaan lisääminen
LisätiedotLOAD 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ätiedotDI Studion käyttökokemuksia. Kaisu Ikonen, Tilastokeskus
Kaisu Ikonen, Tilastokeskus 13.9.2012 Sisältö SAS Tilastokeskuksessa 2012 Esimerkki DIS-projektista Erityiskysymyksiä 13.9.2012 2 SAS Tilastokeskuksessa 2012 SAS-käyttäjiä 350, joista IT-puolella noin
LisätiedotTIEP114 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ätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 8: Pienen ohjelmointikielen tulkki (ohjelmoitava laskin) (mm. SICP 4-4.1.5 osin) Riku Saikkonen 15. 11. 2012 Sisältö 1 Nelilaskintulkki, globaalit muuttujat
Lisätiedot1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä
OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 811122P (5 op.) 12.12.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Keskeneräinen luento 3: Listat (mm. SICP 22.2.3) Riku Saikkonen 31. 10. 2011 Sisältö 1 Linkitetyt listat 2 Linkitetyt listat (SICP 2.1.1, 2.2.1) funktionaalinen
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 2: SICP kohdat 22.2.3 Riku Saikkonen 2. 11. 2010 Sisältö 1 Linkitetyt listat 2 Listaoperaatioita 3 Listarakenteet 4 Gambit-C:n Scheme-debuggeri Linkitetyt
LisätiedotSQL:N PERUSTEET MARKKU SUNI
SQL:N PERUSTEET MARKKU SUNI Relaatiomallisen tietokannan käsittely Tietojen saanti, talletus ja päivitys tapahtuu SQL-kielellä Yhtä operaatiota sanotaan kyselyksi (query) Kyselyjä voidaan laittaa peräkkäin
LisätiedotAureolis Oy Itsemääritellyt funktiot SAS ohjelmoinnissa
Aureolis Oy 2013 24.9.2013 Miksi omatekoisia funktiota? Koodin uudelleen käyttö Koodi kirjoitetaan kerran ja käytään monessa paikassa. Säästytään turhalta työltä Koodin hallinta keskitetysti Koodi voidaan
LisätiedotVINKKI: Katso Kentät Muistioon -painikkeella, mikä on taulukon nimen oikea kirjoitusasu.
RATKAISUJA PULMAILMOITUKSIIN ASTERIOHJELMIEN SQLKYSELYISSÄ Virhe kyselyssä: Microsoft Jet tietokantamoduuli ei löydä syötetaulukkoa tai kyselyä Laskut. Varmista, että se on luotu ja että kirjoitit nimen
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 9: Makrot ja dynaaminen sidonta Riku Saikkonen 7. 12. 2010 Sisältö 1 Makrot 2 Pieni esimerkki abstraktion tekemisestä 3 Dynaaminen sidonta Mikä on makro?
LisätiedotOhjelmoinnin 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ätiedotMetodien tekeminen Javalla
1 Metodien tekeminen Javalla Mikä metodi on? Metodin syntaksi Metodi ja sen kutsuminen Parametreista Merkkijonot ja metodi Taulukot ja metodi 1 Mikä metodi on? Metodilla toteutetaan luokkaan toiminnallisuutta.
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 15.2.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.2.2010 1 / 46 Merkkijonot Merkkijonojen avulla ohjelmassa voi esittää tekstitietoa, esim. nimiä, osoitteita ja
Lisätiedot1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä
OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 81122P (4 ov.) 30.5.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan
LisätiedotHAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät
HAAGA-HELIA Heti-09 1 (12) Näkymät Näkymät... 2 Eri tyyppisiä relaatioita... 2 Taulu - Tallennettu relaatio... 2 Tulosrelaatio - Kyselyn tulos... 2 Näkymä - Virtuaalirelaatio... 2 Näkymien määrittely...
LisätiedotKirjasto Relaatiotietokannat Kevät 2001. Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina
Kirjasto Kevät 2001 Auvinen Annemari Niemi Anu Harjoitustyö 7.4.2001 Sisällysluettelo 1. Yleiskuvaus... 3 2. Vaatimukset... 3 2.1. Toiminnalliset... 3 2.1.1. Sisäänkirjautuminen... 3 2.1.2. Nimikkeiden
Lisätiedot2 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ätiedotHarjoitus 3: Flash-komponenttiarkkitehtuuri (18.3.2016)
Harjoitus 3: Flash-komponenttiarkkitehtuuri (18.3.2016) Tietokoneavusteinen opetus -kurssilla opetetaan Adobe Flash CS6:n käyttämistä neljänä kertana: 11.3.2016, 15.3.2016, 18.3.2016 ja 1.4.2016. Harjoituskerroilla
LisätiedotTutoriaaliläsnäoloista
Tutoriaaliläsnäoloista Tutoriaaliläsnäolokierroksella voi nyt täyttää anomuksen läsnäolon merkitsemisestä Esim. tagi ei toiminut, korvavaltimon leikkaus, yms. Hyväksyn näitä omaa harkintaa käyttäen Tarkoitus
LisätiedotEsimerkki: Laskin (alkua) TIEA341 Funktio ohjelmointi 1 Syksy 2005
Esimerkki: Laskin (alkua) TIEA341 Funktio ohjelmointi 1 Syksy 2005 Esimerkki: Laskin Liukulukulaskentaa Yhteen, vähennys, kerto ja jakolaskut Syötteenä laskutehtävä, tulosteena tulos tai virheilmoitus
LisätiedotVirta_Latausraportti - Tarkistukset
Virta_Latausraportti - Tarkistukset Tällä sivulla ylläpidetään tietovarannossa tehtävien tarkistusten listaa. Tarkistusten tulos ilmenee siis Virta_Latausraportilla PUUTTEITA-listalla. Opiskelijat Opiskelijalla
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 10.2.2010 T-106.1208 Ohjelmoinnin perusteet Y 10.2.2010 1 / 43 Kertausta: listat Tyhjä uusi lista luodaan kirjoittamalla esimerkiksi lampotilat = [] (jolloin
LisätiedotTIETOKANTOJEN PERUSTEET MARKKU SUNI
TIETOKANTOJEN PERUSTEET MARKKU SUNI SQL - KIELI TIETOJEN MUOKKAUS MARKKU SUNI Tarkastellaan tauluissa olevien tietojen muokkausta muokkauskäskyjä: INSERT UPDATE DELETE Kysymys kuuluu: Voiko tietoja muokata
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 26.1.2009 T-106.1208 Ohjelmoinnin perusteet Y 26.1.2009 1 / 33 Valintakäsky if syote = raw_input("kerro tenttipisteesi.\n") pisteet = int(syote) if pisteet >=
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 16.2.2010 T-106.1208 Ohjelmoinnin perusteet Y 16.2.2010 1 / 41 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti
LisätiedotOhjelmoinnin 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// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.
Lue kukin tehtävänanto huolellisesti ja kokonaisuudessaan ennen kuin aloitat vastaamisen. Kustakin tehtävästä voi saada 0 6 pistettä. Tentin läpipääsyraja on 12 / 24 pistettä. Ratkaisut palautetaan WETO-järjestelmään
LisätiedotJava-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ätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 7: Funktionaalista ohjelmointia (mm. SICP 3.5) Riku Saikkonen 13. 11. 2012 Sisältö 1 Laiskaa laskentaa: delay ja force 2 Funktionaalinen I/O 3 Funktionaalista
LisätiedotTilastollisten menetelmien käyttö Kelan tutkimustoiminnassa
Tilastollisten menetelmien käyttö Kelan tutkimustoiminnassa Risto Lehtonen Helsingin yliopisto Kela 1 Tilastokeskuksen SAS-seminaari 16.11.2009 Aiheita Kelan tutkimustoiminta SAS-sovellukset vaativien
LisätiedotOhjelmoinnin peruskurssi Y1
Ohjelmoinnin peruskurssi Y1 CS-A1111 4.10.2017 CS-A1111 Ohjelmoinnin peruskurssi Y1 4.10.2017 1 / 23 Mahdollisuus antaa luentopalautetta Luennon aikana voit kirjoittaa kommentteja ja kysymyksiä sivulle
LisätiedotMetodit. 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ätiedotRADAR - RANDOM DATA GENERATOR
YLEISKUVAUS Radar on sovellus, jolla voi luoda näennäisen oikeaa satunnaisdataa testaus-, demo - ja muihin tarkoituksiin. TIEDUSTELUT Juha Levonen 050 372 5797 juha.levonen@kantapeikko.fi Osa datasta generoidaan
LisätiedotOhjelmointi 1 / 2009 syksy Tentti / 18.12
Tentti / 18.12 Vastaa yhteensä neljään tehtävään (huomaa että tehtävissä voi olla useita alakohtia), joista yksi on tehtävä 5. Voit siis valita kolme tehtävistä 1 4 ja tehtävä 5 on pakollinen. Vastaa JOKAISEN
LisätiedotSamanaikaisuuden hallinta. Optiot transaktionaalisissa työnkuluissa
Samanaikaisuuden hallinta Optiot transaktionaalisissa työnkuluissa Sisältö Transaktionaaliset työnkulut Samanaikaisuuden ongelmat Optiot idea käyttökohteet WorkMan Optioiden toteutus Arviointi Transaktionaaliset
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 11: Olioiden toteuttaminen Riku Saikkonen 28. 11. 2011 Sisältö 1 Miten oliot ja metodikutsut toimivat? 2 Oliot Minkä luokan metodia kutsutaan? Python-esimerkki
LisätiedotOpiskeluoikeuksien maaran tiedonkeruu
Opiskeluoikeuksien maaran tiedonkeruu Määrittely Opinto-oikeuksista tarvitaan seuraavat tiedot: Tieto jokaisesta yksittäisestä opinto-oikeudesta ja kytkentä niistä opinto-oikeuksista jotka ovat samalla
LisätiedotInsert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)
SQL sisältää operaatiot tietokannan sisällön muodostamiseen ja ylläpitoon: insert - uusien rivien vienti tauluun delete - rivien poisto update - rivien muutos 1 Insert lauseella on kaksi muotoa: insert
LisätiedotJohdatus 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ätiedotC++11 lambdat: [](){} Matti Rintala
C++11 lambdat: [](){} Matti Rintala bool(*)(int) Tarve Tarve välittää kirjastolle/funktiolle toiminnallisuutta Callback-funktiot Virhekäsittely Käyttöliittymät Geneeristen kirjastojen räätälöinti STL:n
LisätiedotHakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)]
Tällä viikolla Kertaus SQL-asioista jatketaan SQL-tekstifuntio-harjoituksia tehdään pelifirman tietokannasta ER-malli MySQL:llä, tarkastellaan mallin toimivuutta ja korjataan, jos korjattavaa löytyy, tehdään
LisätiedotTietokannat II -kurssin harjoitustyö
Tietokannat II -kurssin harjoitustyö Jyri Lehtonen (72039), jkoleh@utu.fi Azad Hajipour (72187), azhaji@utu.fi 10.6.2007 Sisältö 1. Tietokannan kuvaus... 1 1.1 Tietokannan rakenne... 1 1.2 Relaatiokaava
LisätiedotJavaScript alkeet Esimerkkikoodeja moniste 2 (05.10.11 Metropolia)
JavaScript alkeet Esimerkkikoodeja moniste 2 (05.10.11 Metropolia) Esim 5.1 laskujärjestys operaattorit var tulos = 5 + 4 * 12 / 4; document.write("5 + 4 * 12 / 4 laskutoimituksen tulos
LisätiedotOhjelmoinnin peruskurssi Y1
Ohjelmoinnin peruskurssi Y1 CSE-A1111 28.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 28.9.2015 1 / 16 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.
LisätiedotWeb Services tietokantaohjelmoinnin perusteet
ASP.NET Web Services Web Services tietokantaohjelmoinnin 2 (22) Sisällys Harjoitus 1: Tietokannat ja Web Services... 3 Harjoitus 2: Windows Client... 10 Harjoitus 3: Datan päivitys TableAdapterin avulla...
LisätiedotOhjelmoinnin peruskurssi Y1
Ohjelmoinnin peruskurssi Y1 CS-A1111 10.10.2018 CS-A1111 Ohjelmoinnin peruskurssi Y1 10.10.2018 1 / 20 Oppimistavoitteet: tämän luennon jälkeen Tiedät, miten ohjelman toimintaa voi tutkia ja ohjelmassa
LisätiedotOhjelmoinnin peruskurssien laaja oppimäärä
Ohjelmoinnin peruskurssien laaja oppimäärä Luento 11: Tulkin muokkaaminen, sisäiset määrittelyt, makrot (mm. SICP 3.2.4, 4-4.1.6) Riku Saikkonen 29. 11. 2012 Sisältö 1 Kirjan tulkin muokkaaminen 2 Yksityiskohta:
LisätiedotSisä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ätiedot815338A 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ätiedotOhjelmoinnin 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ätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 20.1.2010 T-106.1208 Ohjelmoinnin perusteet Y 20.1.2010 1 / 40 Arvon pyytäminen käyttäjältä Käyttäjän antaman arvon voi lukea raw_input-käskyllä. Käskyn sulkujen
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 11.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 11.2.2009 1 / 33 Kertausta: listat Tyhjä uusi lista luodaan kirjoittamalla esimerkiksi lampotilat = [] (jolloin
LisätiedotSAS-ohjelmiston perusteet 2010
SAS-ohjelmiston perusteet 2010 Luentorunko/päiväkirja Ari Virtanen 11.1.10 päivitetään luentojen edetessä Ilmoitusasioita Opintojakso suoritustapana on aktiivinen osallistuminen harjoituksiin ja harjoitustehtävien
LisätiedotOhjelmoinnin peruskurssi Y1
Ohjelmoinnin peruskurssi Y1 CSE-A1111 30.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 30.9.2015 1 / 27 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 25.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 25.2.2009 1 / 34 Syötteessä useita lukuja samalla rivillä Seuraavassa esimerkissä käyttäjä antaa useita lukuja samalla
LisätiedotTIEDON LAATU VIRPI VIRTANEN S-PANKKI JA JANNE ERÄNEN PERIGEUM
TIEDON LAATU VIRPI VIRTANEN S-PANKKI JA JANNE ERÄNEN PERIGEUM SISÄLTÖ Miksi tiedon laatua pitää tarkkailla? Sanktioitu ympäristö Mitä tiedosta voidaan tarkkailla? Numeeriset ja merkkimuotoiset tarkastelut
LisätiedotTAMPEREEN TEKNILLINEN YLIOPISTO
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 06.09.2005 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ
Lisätiedot3.1 Mitä tarkoittaan heredoc? Milloin sitä kannattaa käyttää? Kirjoita esimerkki sen käyttämisestä.
PHP-kielen perusteet Käytä lähteenä PHP:n virallista manuaalia http://www.php.net/docs.php tai http://www.hudzilla.org/php (siirry Paul Hudsonin verkkokirjaan). Lisää materiaalia suomeksi esimerkiksi ohjelmointiputkan
LisätiedotMuuttujatyypit 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