Matemaattisia funktioita

Koko: px
Aloita esitys sivulta:

Download "Matemaattisia funktioita"

Transkriptio

1 Matemaattisia funktioita Funktio Toiminta max(x) max(x,[],dim) min(x) Vektorin X suurin luku. Matriiseille hakee suurimman luvun j jokaiselta matriisin sarakkeelta. DIM = 1 Laskee summan sarakkeilta (oletus, voi jättää pois) DIM = 2 Laskee summan riveiltä Vektorin X pienin luku. Matriiseille hakee pienimmän luvun jokaiselta matriisin sarakkeelta min(x,[],dim) DIM = Lasketaan joko sarakkeittain (1) tai riveittäin (2) round(x) ceil(x) floor(x) fix(x) abs(x) sum(x) Pyöristys lähimpään kokonaislukuun Pyöristys kohti + ääretöntä Pyöristys kohti - ääretöntä Pyöristys kohti nollaa Itseisarvo Vektorin X alkioiden summa sum(x,dim) DIM = Lasketaan joko sarakkeittain (1) tai riveittäin (2) cumsum(x) Vektorin X alkioiden kumulatiivinen summa cumsum(x,dim) DIM = Lasketaan joko sarakkeittain (1) tai riveittäin (2) prod(x) Vektorin X alkioiden tulo prod(x,dim) DIM = Lasketaan joko sarakkeittain (1) tai riveittäin (2) cumprod(x) Vektorin X alkioiden kumulatiivinen tulo cumprod(x,dim) DIM = Lasketaan joko sarakkeittain (1) tai riveittäin (2) diff(x) diff(x,n) diff(x,n,dim) mean(x) Vektoreille [X(2)-X(1) X(3)-X(2) X(n)-X(n-1)] Matriiseille [X(2:n,:) - X(1:n-1,:)] N:n kertaluvun erotus Vektorin X alkioiden keskiarvo. Matriiseille laskee jokaisen sarakkeen keskiarvon. mean(x,dim) DIM = Lasketaan joko sarakkeittain (1) tai riveittäin (2) median(x) Vektorin X alkioiden mediaani eli keskimmäinen luku lajitellusta lukujoukosta. Matriiseille laskee mediaanin jokaiselta sarakkeelta. mean(x,dim) DIM = Lasketaan joko sarakkeittain (1) tai riveittäin (2) std(x) Vektorin X keskihajonta. Matriiseille keskihajonta sarakkeittain. std(x,w,dim) DIM = Lasketaanjoko sarakkeittain (1) tai riveittäin (2) W = 0 Käytetään normalisoinnissa kerrointa N-1 (oletus) W = 1 Käytetään normalisoinnissa kerrointa N

2 var(x) var(x,w,dim) Vektorin X varianssi (keskihajonnan neliö, ks. Syntaksi edellä) sort(x) Lajittelee vektorin X alkiot kasvavaan järjestykseen. Y = sort(x,dim,mode) DIM = Lajitellaan joko sarakkeittain (1) tai riveittäin (2) MODE = 'ascend', nousevaan järjestykseen MODE = 'descend' laskevaan järjestykseen Y = Lajiteltu vektori rand(n) NxN kokoinen matriisi satunnaislukuja väliltä (0.0, 1.0) rand(1,n) rand(m,n) rand N alkion mittainen vaakavektori satunnaislukuja MxN kokoinen matriisi satunnaislukuja (ilman argumentteja) Yksi satunnaisluku. Arvo vaihtuu joka kutsukerralla >> a=[ ]; >> sort(a) >> sort(a,'descend') >> mean(a) >> median(a) 4 >> cumsum(a) >> cumprod(a) >> diff(a) Tehtävä: Tee 4x4-kokoinen satunnaislukumatriisi X, joka sisältää kokonaislukuarvoja väliltä Tehtävä: Laske edellisen tehtävän matriisin X alkioitten summa a) Riveittäin b) Sarakkeittain c) Koko matriisin alkioiden summa Tehtävä: Talletan matriisin X alkiot 16 alkion mittaiseen vaakavektoriin Y ja lajittele alkiot järjestykseen suurimmasta pienimpään.

3 Tehtävä: Laske positiivisen kokonaisluvun n kertoma n!=1*2*3*4*..n Tietotyypit Matlabissa on käytössä seuraavat tietotyypit: double - double precision. char - character array (string). logical - logical (true / false, 0 / 1) cell - cell array. struct - struct data type class - class data type single - single precision. uint8-8-bit integer. uint16-16-bit integer. uint32 - unsigned 32-bit integer. uint64 - unsigned 64-bit integer. int8 - signed 8-bit integer. int16 - signed 16-bit integer. int32 - signed 32-bit integer. int64 - signed 64-bit integer. inline - INLINE object. function_handle - Function handle array. Perustietotyypit Numeerisen tiedon oletustyyppi on double. Kaksoistarkkuuden luvuilla laskeminen on hidasta. Kannattaa muuttaa data kokonaislukutyypiksi jos se on suinkin mahdollista, kuten esimerkiksi DSP-sovelluksissa. Toisaalta läheskään kaikki Matlabin funktiot eivät toimi kokonaislukutyypeille. Matlabissa muuttujan tyyppiä ei tarvitse määritellä kuten C- kielessä. Matlab toimii niin, että ns. komentotulkki tulkitsee käyttäjän syöttämät muuttujat oletustietotyyppeihin ja tunnistaa luvut sekä merkit. Esimerkki muunnoksesta (Matlabin kommenttimerkki on %):

4 >>%a on tyyppiä double >>a=1; >>%a on 8-bittinen etumerkitön kokonaisluku: >>a=uint8(a); >>sqrt(a)??? Function 'sqrt' is not defined for values of class 'uint8'. Error in ==> sqrt at 13 builtin('sqrt', varargin{:}); Siis esimerkiksi neliöjuurta ei voi ottaa kokonaisluvusta. Merkkijonot Matlabin merkkijono on vektori, joka sisältää merkkejä: >> s='merkkijono' s = merkkijono Merkkijonojen käsittely Merkkijonojen käsittelyyn on käytössä komennot: String Manipulation deblank Strip trailing blanks from the end of a string findstr Find one string within another lower Convert string to lower case strcat String concatenation strcmp Compare strings strcmpi Compare strings ignoring case strjust Justify a character array strmatch Find possible matches for a string strncmp Compare the first n characters of two strings strrep String search and replace strtok First token in string strvcat Vertical concatenation of strings symvar Determine symbolic variables in an expression texlabel Produce the TeX format from a character string upper Convert string to upper case

5 Muutama esimerkki: >> s='aku' s = aku >> q='ankka' q = ankka >> strcat(s,q) akuankka >> p=strcat(s,q) p = akuankka >> strtok(p,'u') ak >> findstr(p,'uan') 3 >> strcmp(s,q) 0 >> strrep(p,'aku','roope') roopeankka >> strrep(p,'aku','roope') roopeankka Merkkijonon muunnokset Merkkijono voidaan muuttaa numeeriseksi tiedoksi ja päinvastoin. String to Numeric base2dec Convert base N number string to decimal number bin2dec Convert binary number string to decimal number hex2dec Convert hexadecimal number string to decimal number hex2num Convert hexadecimal number string to double number str2double Convert string to double-precision number str2num Convert string to number Numeric to String char Convert to character array (string) dec2base Convert decimal to base N number in string dec2bin Convert decimal to binary number in string

6 dec2hex int2str mat2str num2str Convert decimal to hexadecimal number in string Convert integer to string Convert a matrix to string Convert number to string Muunnos merkkijonosta kaksoistarkkuuden liukuluvuksi: >> s=' '; >> whos Name Size Bytes Class s 1x8 16 char array Grand total is 8 elements using 16 bytes >> s=str2num(s) s = >> whos Name Size Bytes Class s 1x1 8 double array Grand total is 1 element using 8 bytes Komento whos näyttää sillä hetkellä käytössä olevien muuttujien nimet, koot ja tietotyypit. Sama tieto on näkyvillä Workspace-ikkunassa. Merkkijonon pituus voidaan määrittää komennoilla length tai size, jotka laskevat minkä tahansa vektorin pituuden. Tehtävä: Muuta piin likiarvo merkkijonoksi.käyttämällä Matlabin sisäistä vakiota pi ja määritä tuloksena saadun merkkijonon pituus. Tietue Tietue koostuu kentistä, joilla on tietty tyyppi ja arvo. Tietueen kenttiin viitataan pisteoperaattorilla (.). Luodaan kahden alkion mittainen tietuetaulukko s, joka sisältää kolme kenttää type, color ja x. type-kenttä voi saada arvot big ja little. Kenttä color voi saada ainoastaan arvon red. Kenttä x voi saada arvot 3 tai 4. Tulostuu: s = struct('type',{'big','little'},'color',{'red'},'x',{3 4}) s = 1x2 struct array with fields: type color x

7 Tietuetaulukon alkioihin viitataan antamalla taulukon indeksi tavallisissa suluissa (samalla lailla kuin viitattiin vektorin alkioihin): >>s(1) type: 'big' color: 'red' x: 3 >>s(2) type: 'little' color: 'red' x: 4 Tietuetaulukkoon voidaan helposti lisätä uusia alkioita: >> s(3).type='tiny';s(3).color='blue';s(3).x=5; >> s(3) type: 'tiny' color: 'blue' x: 5 Matlab tukee versiosta 7 alkaen oliopohjaista ohjelmointia. Kieleen on lisätty luokkatyyppi class. Jätetään tämä kuitenkin tällä kurssilla käsittelemättä. Tehtävä: Toteuta oheisen kuvan mukainen tietue.

8 Operaattorit Matlab sisältää seuraavat operaattorit. Huomaa, että kerto-, jako-, ja potenssiinkorotuksissa on määritelty erikseen operaattorit matriisioperaatioille ja alkioittaisille operaatioille. Arithmetic operators. plus - Plus + minus - Minus - mtimes - Matrix multiply * times - Array multiply.* mpower - Matrix power ^ power - Array power.^ mldivide - Backslash or left matrix divide \ mrdivide - Slash or right matrix divide / ldivide - Left array divide.\ rdivide - Right array divide./ kron - Kronecker tensor product kron Relational operators. eq - Equal == ne - Not equal ~= lt - Less than < gt - Greater than > le - Less than or equal <= ge - Greater than or equal >= Logical operators. and - Logical AND (for vectors) & or - Logical OR (for vectors) and - Logical AND (for scalars) && or - Logical OR (for scalars) not - Logical NOT ~ xor - Logical EXCLUSIVE OR any - True if any element of vector is nonzero all - True if all elements of vector are nonzero Vertailu- ja loogisten operaattoreiden syntaksi on hieman erilainen kuin mihin C-kielessä on totuttu. Esimerkiksi erisuuruusvertailu tehdään ~= operaattorilla. Loogisissa operaatioissa on vain yksi & ja jos verrataan taulukoita alkioittain. Jos verrataan skalaareja eli yksittäisiä lukuja, käytetään && ja. Vertailuoperaattorit palauttavat totuusarvon 0 (false) tai 1 (true): >> 1 == 2 0 >> 1 < 2

9 1 >> 1 ~= 2 1 >> 1 >= 2 0 >> false 0 >> true 1 Loogisia operaattoreita voidaan käyttää valitsemaan vektorista alkiot, jotka toteuttavat tietyn ehdon. Esimerkiksi seuraava esimerkki valitsee vektorista a kaikki alkiot, joiden arvo on 1 ja sijoittaa ne uuteen vektoriin b. Vektori ind sisältää totuusarvon tosi tai epätosi sen mukaan oliko vertailtava ehto tosi vai epätosi. >> a=[ ] a = >> ind=(a==1) ind = >> b=a(ind) b = 1 1 Tehtävä: Vektori X sisältää alkiot Laske vektorin positiivisten ja negatiivisten alkioiden summat. Sitten esimerkki loogisista operaattoreista: >> a=logical([ ]) a = >> b=logical([ ]) b = >> a&b >> a b >> ~a

10 >> xor(a,b) >> any(a) 1 >> all(a) 0 >> a && b??? Operands to the and && operators must be convertible to logical scalar values. >> (2 > 1) && (3 > 4) 0 >> (2 > 1) (3 > 4) 1 Tehtävä: Täytä vektori sadalla satunnaislukuarvoilla väliltä 0 1. Laske niiden lukujen määrä jotka ovat välillä Kuvaajien piirto Kaksiulotteiset kuvaajat Kaksiulotteisia kuvaajia voidaan piirtää näytölle mm. komennoilla plot, stem, bar, hist tai stairs. plot Esimerkki: Piirretään sini- ja kosinifunktion tulo välillä 0 -> 2π. Määritellään x-akseli >>x=[0:0.1:2*pi] ; >>y=sin(x); >>plot(x,y) Kuvaajaan voidaan lisätä akselien nimet ja otsikko: >>xlabel('x = 0:2\pi') >>ylabel('sin(x)') >>title('sinifunktion kuvaaja','fontsize',12)

11 Seuraava plot-komento hävittää edellisen tulostuksen plot-ikkunasta ja tulostaa uuden kuvaajan: >>y=cos(x) >>plot(x,y,'.')

12 Kannattaa huomata, että tästä tulostuksesta on hävinnyt akselit ja otsikko. Se on täysin uusi kuvaaja. Komennon kolmas argumentti. määrittää tulostustyypin, joka tässä tapauksessa on piste (.). Plot-komennon helpistä löytyy täydellinen lista eri muotoiluvaihtoehdoista. Monesti halutaan tulostaa useampi kuvaaja yhteen kuvaan. Tämä voidaan tehdä määrittelemällä hold on Seuraavat komennot tulostavat sinin ja kosinin kuvaajat samaan kuvaan: >>x = 0:pi/100:2*pi; >>y = sin(x); >>plot(x,y) >>xlabel('x') >>ylabel('f(x)') >>title('funktion f(x) kuvaaja','fontsize',12) >>y=cos(x) >>hold on >>plot(x,y,'.') Samaan ikkunaan piirrellään niin kauan kuin hold-asetus on päällä. Se voidaan poistaa komennolla >>hold off

13 Jolloin seuraava plot komento tyhjentää edelliset tulostukset. Jos halutaan luoda uusi tulostusikkuna siten, että entinen jää näkyviin eikä kirjoiteta sen päälle, voidaan antaa komento >>figure Tulostetaan uuteen plot-ikkunaan (Figure 2) sinin ja kosinin tulo: >>plot(x,sin(x).*cos(x)) >>title('funktion f(x) kuvaaja','fontsize',12) >>xlabel('x') >>ylabel('sin(x)*cos(x)') Figure 2 on nyt aktiivinen. Jos halutaan vaihtaa takaisin Figure 1:een, annetaan figurekomento ja kuvaikkunan numero: >>figure(1)

14 Nähdään, että Figure 1 tyhjentyi. Siihen voi taas tulostaa jotain. Yhteen ikkunaan voidaan tulostaa useampi kuvaaja käyttämällä subplot-komentoa. Komennon yleinen muoto on: subplot(m,n,p) m = rivien lukumäärä n = sarakkeiden lukumäärä p = aktiivisen ikkunan numero, lasketaan vasemmalta oikealle ja ylhäältä alas >>subplot(2,3,1); >>plot(x,sin(x)); >>subplot(2,3,2); >>plot(x,sin(2*x)); >>subplot(2,3,3); >>plot(x,cos(x)); >>subplot(2,3,4); >>plot(x,cos(x/2)); >>subplot(2,3,5); >>plot(x,cos(x).*sin(x)); >>subplot(2,3,6); >>plot(x,cos(x).*sin(2*x));

15 Tehtävä: Piirrä seuraavien funktioiden kuvaajat omiin ikkunoihinsa. a. exp(-x²) b. ln(x²+x+1) c. x sin(2x²+1) d. exp(sin(3x)) - 1 Tehtävä: Piirrä edellisen tehtävän funktiot yhteen ikkunaan käyttäen subplot-komentoa. Lisää kuhunkin kuvaajaan otsikoksi piirrettävän funktion matemaattinen kaava. Tehtävä: Piirrä funktion f(x) = sin(1/x) kuvaaja välillä 0.01<x<0.1 niin, että kuvaaja on mahdollisimman sileä, so. että siinä on mahdollisimman vähän kulmia. Plot-komentoon liittyviä muita komentoja, joita tässä ei käydä tarkemmin läpi: axis([xmin xmax ymin ymax]) = x- ja y-akselien suurimmat ja pienimmät arvot (skaalaus) semilogx = Logaritminen (10-kantainen) x-akseli semilogy = Logariminen y-akseli loglog = Molemmat akselit logaritmiset

16 plotyy = Tulostaa kaksi kuvaajaa, joista toisen arvot vasemmalla y-akselilla ja toisen arvot oikealla y-akselilla plot3 = 3-ulotteinen (x,y,z) plot grid = gridlines eli akselien viivoitus kuvaajan sisälle scatter = scatter-plot. Sama kuin plot(x,y, o ) stem Käytetään yleensä diskreettien signaalien kuvaajien piirrossa. Stem piirtää pystyviivan, jonka päässä on ympyrä: >>x=[0:0.5:2*pi]; >>stem(x,sin(x)) bar Pylväsdiagrammi, oletus pystysuuntaan. Yhteen liittyvä data annetaan matriisimuodossa: >>x=[ ] x = >>bar(x) bar-komentoon liittyviä komentoja: barh = Horisontaalinen pylväsdiagrammi bar3 = 3-ulotteinen pylväsdiagrammi (vertikaalinen) bar3h = 3- ulotteinen pylväsdiagrammi (horisontaalinen) hist

17 Histogrammi kuvaa, kuinka monta kertaa arvo tietyltä määritellyltä väliltä esiintyy lukujoukossa. Esimerkiksi satunnaislukujen arvonta. Arvotaan 100, 1000 ja satunnaislukua väliltä 0 1, lajitellaan 100 luokkaan ja piirretään luvuista histogrammi: >>x=rand(1,100); >>subplot(3,1,1) >>title('n=100'); >>hist(x,100) >>x=rand(1,1000); >>subplot(3,1,2) >>title('n=1000'); >>hist(x,100) >>x=rand(1,10000); >>subplot(3,1,3) >>hist(x,100) >>title('n=10000'); Tehtävä: Oheisessa taulukossa on luokan HYV6SN Olio-ohjelmoinnin kurssin arvosanat. Piirrä arvosanojen jakauma käyttäen Matlabin histogrammia. Lisää histogrammiin otsikko ja nimeä akselit.. Arvosanat: Kolmiulotteisten pintojen piirto (Mesh and surface plots) Matlab määrittelee kolmiulotteisen pinnan siten, x- ja y-akselien arvot muodostavat tasohilan (meshgrid), jonka päälle z-koordinaatti koodataan. mesh Oheinen esimerkki tulostaa 3-ulotteisen sinc-funktion kuvaajan käyttäen meshkomentoa. (HUOM: sinc(x)=sin(x)/x) >>[X,Y] = meshgrid(-20:.5:20); >>R = sqrt(x.^2 + Y.^2) + eps; >>Z = sin(r)./r; >>mesh(x,y,z,'edgecolor','black')

18 surf meshgrid muuntaa argumenttina annetun vektorin kaksiulotteiseksi tasohilaksi. R on euklidinen etäisyys hilan keskeltä eps on ns. kone-epsilon, eli liukuluvun tarkkuus käytetyssä järjestelmässä Surface plot surf eli pintatulostus tulostaa samalla periaatteella kuin mesh. Erona on, että pinnan muodostavat suunnikkaat värjätään eri väreillä riippuen z:n arvosta. Oheiset komennot tulostavat edellisen esimerkin sinc-funktion kuvaajan käyttäen hsv-värimallia. Lisäksi colorbar-komento esittää käytetyn värikoodauksen: >>surf(x,y,z) >>colormap hsv >>colorbar

19 Kuvaan voidaan lisätä läpinäkyvyys (transparency) alpha-parametrin avulla: >>alpha(0.4)

20 Kolmiulotteisen tiedon visualisointi kuvana Kolmiulotteinen tieto voidaan esittää myös kuvana, jossa x- ja y-akselit määrittävät kuvaalkion koodinaatit. Yksittäinen kuva-alkio on nimeltään pikseli (pixel). Jokaiseen pikseliin liittyy tieto sen sisältämästä väri- tai harmaasävyarvosta, joka vastaa edellisten esimerkkien x-koordinaattia. Kuvien piirtoon on ainakin 4 eri komentoa: image(z) = Näyttää matriisin Z kuvana käyttäen voimassa olevaa värikarttaa (colormap). imagesc(z)= Kuten image, mutta skaalaa kuvan niin että se käyttää koko käytössä olevaa värikarttaa imview(z) = Java:n virtuaalikonetta käyttävä versio (hidas mutta helppokäyttöinen) imshow(z)= vain kokonaislukutyypeille toimiva versio Visualisoidaan sinc-funktio eri tavoilla: >>image(z) Eipä tuosta paljon mitään näy. Johtuu siitä, että datassa Z suurin arvo on vain 1. Kokeillaan skaalaavaa versiota: >>imagesc(z)

21 VAU! Tämä on siis sama sinc mikä edellisissä kuvissa mesh ja surf-komennoilla tulostettuna, mutta katsottuna ylhäältä päin. Huomaa, että värikarttana on HSV kuten aikaisemmin. Värikartan voi vaihtaa colormap-komennolla: >>colormap(jet) >>imagesc(z) >>colormap(gray) >>imagesc(z)

22

Matlabin perusteita Grafiikka

Matlabin perusteita Grafiikka BL40A0000 SSKMO KH 1 Seuraavassa esityksessä oletuksena on, että Matlabia käytetään jossakin ikkunoivassa käyttöjärjestelmässä (PC/Win, Mac, X-Window System). Käytettäessä Matlabia verkon yli joko tekstipäätteeltä,

Lisätiedot

Matlab-perusteet Harjoitustehtävien ratkaisut

Matlab-perusteet Harjoitustehtävien ratkaisut Matlab-perusteet Harjoitustehtävien ratkaisut Osa 1 Tehtävä: Määrittele muuttujat a ja b, anna niille vaikkapa arvot 3 ja 2 ja kokeile peruslaskutoimituksia niillä. >>a=1;b=2; >>a+b 3 >>a-b -1 >>a*b 2

Lisätiedot

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 1 / vko 44

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 1 / vko 44 MS-A0003/A0005 Matriisilaskenta Laskuharjoitus / vko Tehtävä (L): Käynnistä Matlab-ohjelma ja kokeile laskea sillä muutama peruslaskutoimitus: laske jokin yhteen-, vähennys-, kerto- ja jakolasku. Laske

Lisätiedot

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37 Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37 Tehtävä 1: Käynnistä Matlab-ohjelma ja kokeile laskea sillä muutama peruslaskutoimitus: laske jokin yhteen-, vähennys-, kerto- ja jakolasku. Laske

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

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa.

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa. Laskuharjoitus 1A Mallit Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa. 1. tehtävä %% 1. % (i) % Vektorit luodaan

Lisätiedot

mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä

mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä osittaisderivaatoista: y 1... J F =.

Lisätiedot

plot(f(x), x=-5..5, y=-10..10)

plot(f(x), x=-5..5, y=-10..10) [] Jokaisen suoritettavan rivin loppuun ; [] Desimaalierotin Maplessa on piste. [] Kommentteja koodin sekaan voi laittaa # -merkin avulla. Esim. #kommentti tähän [] Edelliseen tulokseen voi viitata merkillä

Lisätiedot

ATK tähtitieteessä. Osa 2 - IDL perusominaisuudet. 12. syyskuuta 2014

ATK tähtitieteessä. Osa 2 - IDL perusominaisuudet. 12. syyskuuta 2014 12. syyskuuta 2014 IDL - Interactive Data Language IDL on tulkattava ohjelmointikieli, jonka vahvuuksia ovat: Yksinkertainen, johdonmukainen komentosyntaksi. Voidaan käyttää interaktiivisesti, tai rakentamalla

Lisätiedot

BL40A0000 Säätötekniikan ja signaalinkäsittelyn

BL40A0000 Säätötekniikan ja signaalinkäsittelyn 1 BL40A0000 Säätötekniikan ja signaalinkäsittelyn matemaattiset ohjelmistot Luennot ja harjoitukset Katja Hynynen, h. 6431, p. 040-548 8954 Katja.Hynynen@lut.fi Opetus ja suoritusvaatimukset OPETUS: Luentoja

Lisätiedot

Harjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006

Harjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006 Harjoitus 1: Matlab Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Tutustuminen Matlab-ohjelmistoon Laskutoimitusten

Lisätiedot

T211003 Sovellusohjelmat Matlab osa 4: Skriptit, funktiot ja kontrollirakenteet

T211003 Sovellusohjelmat Matlab osa 4: Skriptit, funktiot ja kontrollirakenteet Ohjelmointi Matlab-komentoja voidaan koota ns. M-tiedostoon. Nimi tulee tiedoston tarkentimesta.m. Matlabilla voidaan ohjelmoida kahdella eri tavalla: Skriptit eli komentojonot eli makrot Funktiot eli

Lisätiedot

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9. Python linkit: Python tutoriaali: http://docs.python.org/2/tutorial/ Numpy&Scipy ohjeet: http://docs.scipy.org/doc/ Matlabin alkeet (Pääasiassa Deni Seitzin tekstiä) Matriisit ovat matlabin perustietotyyppejä.

Lisätiedot

Matlabperusteita, osa 1. Heikki Apiola Matlab-perusteita, osa 1. Heikki Apiola. 12. maaliskuuta 2012

Matlabperusteita, osa 1. Heikki Apiola Matlab-perusteita, osa 1. Heikki Apiola. 12. maaliskuuta 2012 Matlab-perusteita, 12. maaliskuuta 2012 Matlab-perusteita, Ohjelmahahmotelma 1. viikko: Matlab 2. viikko: Maple (+ annettujen Matlab tehtävien ratkaisuja) 3. viikko: Maple ja Matlab (lopputyöt) Matlab-perusteita,

Lisätiedot

Matemaattiset ohjelmistot A. Osa 2: MATLAB

Matemaattiset ohjelmistot A. Osa 2: MATLAB Matemaattiset ohjelmistot 802364A Osa 2: MATLAB Mikko Orispää 30. lokakuuta 2013 Sisältö 1 MATLAB 2 1.1 Peruslaskutoimitukset......................... 2 1.2 Muuttujat................................ 3

Lisätiedot

Heikki Apiola, Juha Kuortti, Miika Oksman. 5. lokakuuta Matlabperusteita, osa 1

Heikki Apiola, Juha Kuortti, Miika Oksman. 5. lokakuuta Matlabperusteita, osa 1 Matlab-perusteita, 5. lokakuuta 2015 Matlab-perusteita, Mikä on Matlab Matriisilaboratorio [Cleve Moler, Mathworks inc.] Numeerisen laskennan työskentely-ympäristö Suuri joukko matemaattisia ja muita funktioita,

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

13. Loogiset operaatiot 13.1

13. Loogiset operaatiot 13.1 13. Loogiset operaatiot 13.1 Sisällys Loogiset operaatiot AND, OR, XOR ja NOT. Operaatioiden ehdollisuus. Bittioperaatiot. Loogiset operaatiot ohjausrakenteissa. Loogiset operaatiot ja laskentajärjestys.

Lisätiedot

Olio-ohjelmointi Syntaksikokoelma

Olio-ohjelmointi Syntaksikokoelma C++-kielen uusia ominaisuuksia Olio-ohjelmointi Syntaksikokoelma 31.10.2008 Bool-tietotyyppi: Totuusarvo true (1), jos ehto on tosi ja false (0) jos ehto epätosi. Dynaaminen muistinvaraus: Yhden muuttuja

Lisätiedot

Ohjelmointiharjoituksia Arduino-ympäristössä

Ohjelmointiharjoituksia 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ätiedot

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Alkuarvot 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ätiedot

Luku 3. Listankäsittelyä. 3.1 Listat

Luku 3. Listankäsittelyä. 3.1 Listat Luku 3 Listankäsittelyä Funktio-ohjelmoinnin tärkein yksittäinen tietorakenne on lista. Listankäsittely on paitsi käytännöllisesti oleellinen aihe, se myös valaisee funktio-ohjelmoinnin ideaa. 3.1 Listat

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 3.2.2010 T-106.1208 Ohjelmoinnin perusteet Y 3.2.2010 1 / 36 Esimerkki: asunnon välityspalkkio Kirjoitetaan ohjelma, joka laskee kiinteistönvälittäjän asunnon

Lisätiedot

Ohjelmoinnin perusteet Y Python

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

Lisätiedot

Harjoitus 10: Mathematica

Harjoitus 10: Mathematica Harjoitus 10: Mathematica Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Tutustuminen Mathematica-ohjelmistoon Mathematican

Lisätiedot

Ohjelmointi 1 C#, kevät 2013,

Ohjelmointi 1 C#, kevät 2013, Ohjelmointi 1 C#, kevät 2013, 19.4.2013 (English versions of the questions can be requested from the supervisor. Englanninkieliset kysymykset saa pyytämällä tentin valvojalta.) Tentti (yliopisto opiskelijat)

Lisätiedot

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin 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ätiedot

Fortran 90/95. + sopii erityisesti numeriikkaan:

Fortran 90/95. + sopii erityisesti numeriikkaan: Fortran 90/95 + sopii erityisesti numeriikkaan: + optimoivat kääntäjät tehokas koodi + mukana valmiiksi paljon varusfunktioita + kompleksiluvut + taulukko-operaatiot + operaattorit laajennettavissa myös

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

Ohjelmointi 1 Taulukot ja merkkijonot

Ohjelmointi 1 Taulukot ja merkkijonot Ohjelmointi 1 Taulukot ja merkkijonot Jussi Pohjolainen TAMK Tieto- ja viestintäteknologia Johdanto taulukkoon Jos ohjelmassa käytössä ainoastaan perinteisiä (yksinkertaisia) muuttujia, ohjelmien teko

Lisätiedot

Mat-1.C Matemaattiset ohjelmistot

Mat-1.C Matemaattiset ohjelmistot Mat-.C Matemaattiset ohjelmistot Luento ma 9.3.0 $z; Error, (in rtable/product) invalid arguments.z; z C z C z3 3 C z4 4 C z5 5.Tr z ; z C z C z3 3 C z4 4 C z5 5 ; Error, (in rtable/power) eponentiation

Lisätiedot

Harjoitus 7. 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

Harjoitus 7. 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti: Harjoitus 7 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti: class Lintu //Kentät private int _siivenpituus; protected double _aivojenkoko; private bool _osaakolentaa; //Ominaisuudet public int

Lisätiedot

ELEC-C5210 Satunnaisprosessit tietoliikenteessä Harjoitus M1,

ELEC-C5210 Satunnaisprosessit tietoliikenteessä Harjoitus M1, ELEC-C5210 Satunnaisprosessit tietoliikenteessä Harjoitus M1, 16.3.2017 1. Syntaksista, vektoreista ja matriiseista: Tehtävän eri kohdat on tehtävä järjestyksessä. Myöhemmissä kohdissa oletetaan, että

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

Tyyppejä ja vähän muutakin. TIEA341 Funktio ohjelmointi 1 Syksy 2005

Tyyppejä ja vähän muutakin. TIEA341 Funktio ohjelmointi 1 Syksy 2005 Tyyppejä ja vähän muutakin TIEA341 Funktio ohjelmointi 1 Syksy 2005 Viime luennolla... Haskellin alkeita pääasiassa Hello World!... ja muita tutunoloisia ohjelmia Haskellilla Haskellin voima on kuitenkin

Lisätiedot

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes)

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes) Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes) Kääreluokista Javan alkeistietotyypit ja vastaavat kääreluokat Autoboxing Integer-luokka Double-luokka Kääreluokista Alkeistietotyyppiset muuttujat (esimerkiksi

Lisätiedot

ITKP102 Ohjelmointi 1 (6 op)

ITKP102 Ohjelmointi 1 (6 op) ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 7. huhtikuuta 2017 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille. Kirjoittamasi luokat, funktiot ja aliohjelmat

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

ITKP102 Ohjelmointi 1 (6 op)

ITKP102 Ohjelmointi 1 (6 op) ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 20. huhtikuuta 2018 Vastaa kaikkiin tehtäviin. Tee kukin tehtävä omalle konseptiarkille. Noudata ohjelmointitehtävissä kurssin koodauskäytänteitä.

Lisätiedot

Java-kielen perusteet

Java-kielen perusteet Java-kielen perusteet Tunnus, varattu sana, kommentti Muuttuja, alkeistietotyyppi, merkkijono, literaalivakio, nimetty vakio Tiedon merkkipohjainen tulostaminen 1 Tunnus Java tunnus Java-kirjain Java-numero

Lisätiedot

Matlab-perusteet. Jukka Jauhiainen. OAMK / Tekniikan yksikkö. Hyvinvointiteknologian koulutusohjelma

Matlab-perusteet. Jukka Jauhiainen. OAMK / Tekniikan yksikkö. Hyvinvointiteknologian koulutusohjelma Matlab-perusteet Jukka Jauhiainen OAMK / Tekniikan yksikkö Hyvinvointiteknologian koulutusohjelma Tämän materiaalin tarkoitus on antaa opiskelijalle lyhyehkö johdanto Matlabohjelmiston perusteisiin. Matlabin

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

ATK tähtitieteessä. Osa 5 - IDL datan sovitusta ja muita ominaisuuksia. 25. syyskuuta 2014

ATK tähtitieteessä. Osa 5 - IDL datan sovitusta ja muita ominaisuuksia. 25. syyskuuta 2014 25. syyskuuta 2014 IDL - datan sovitus IDL sisältää monia yleisimpiä funktioita, joita voi helposti sovittaa datapisteisiin. Jos valmiista funktioista ei löydy mieleistä, voi oman mielivaltaisen sovitusfunktion

Lisätiedot

Harjoitus 4 (viikko 47)

Harjoitus 4 (viikko 47) Kaikki tämän harjoituksen tehtävät liittyvät joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Saa hyvän alun harjoitustyön tekoon, kun ratkaiset mahdollisimman monta tehtävää. Mikäli tehtävissä

Lisätiedot

Harjoitus 5 (viikko 41)

Harjoitus 5 (viikko 41) Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja sisentää koodisi. Vältä liian pitkiä rivejä, käytä

Lisätiedot

Tilastolliset toiminnot

Tilastolliset toiminnot -59- Tilastolliset toiminnot 6.1 Aineiston esittäminen graafisesti Tilastollisen aineiston tallentamisvälineiksi TI-84 Plus tarjoaa erityiset listamuuttujat L1,, L6, jotka löytyvät 2nd -toimintoina vastaavilta

Lisätiedot

13. Loogiset operaatiot 13.1

13. Loogiset operaatiot 13.1 13. Loogiset operaatiot 13.1 Sisällys Loogiset operaatiot AND, OR, XOR ja NOT. Operaatioiden ehdollisuus. Bittioperaatiot. Loogiset operaatiot ohjausrakenteissa. Loogiset operaatiot ja laskentajärjestys.

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

System.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);

System.out.printf(%d / %d = %.2f%n, ekaluku, tokaluku, osamaara); Kysy Karilta tai Kimmolta, jos tehtävissä on jotain epäselvää. Kerro WETOon liittyvät ongelmat suoraan Jormalle sähköpostitse (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja

Lisätiedot

Harjoitus 6 (viikko 42)

Harjoitus 6 (viikko 42) Nämä ovat kurssin viimeiset harjoitukset. Hyväksytyistä ratkaisuista ja läsnäoloista kerättyjen pisteiden summan tulee olla vähintään 40 % ( pistettä) tehtävien ja läsnäolopisteiden kokonaislukumäärien

Lisätiedot

Python-ohjelmointi Harjoitus 2

Python-ohjelmointi Harjoitus 2 Python-ohjelmointi Harjoitus 2 TAVOITTEET Kerrataan tulostuskomento ja lukumuotoisen muuttujan muuttaminen merkkijonoksi. Opitaan jakojäännös eli modulus, vertailuoperaattorit, ehtorakenne jos, input-komento

Lisätiedot

Juha Haataja 4.10.2011

Juha Haataja 4.10.2011 METROPOLIA Taulukkolaskenta Perusteita Juha Haataja 4.10.2011 Lisätty SUMMA.JOS funktion käyttö (lopussa). Tavoite ja sisältö Tavoite Taulukkolaskennan peruskäytön hallinta Sisältö Työtila Omat kaavat,

Lisätiedot

9. Vektorit. 9.1 Skalaarit ja vektorit. 9.2 Vektorit tasossa

9. Vektorit. 9.1 Skalaarit ja vektorit. 9.2 Vektorit tasossa 9. Vektorit 9.1 Skalaarit ja vektorit Skalaari on koon tai määrän mitta. Tyypillinen esimerkki skalaarista on massa. Lukumäärä on toinen hyvä esimerkki skalaarista. Vektorilla on taas suuruus ja suunta.

Lisätiedot

ATK tähtitieteessä. Osa 5 - IDL datan sovitusta ja muita ominaisuuksia. 25. syyskuuta 2014

ATK tähtitieteessä. Osa 5 - IDL datan sovitusta ja muita ominaisuuksia. 25. syyskuuta 2014 25. syyskuuta 2014 IDL - datan sovitus IDL sisältää monia yleisimpiä funktioita, joita voi helposti sovittaa datapisteisiin. Jos valmiista funktioista ei löydy mieleistä, voi oman mielivaltaisen sovitusfunktion

Lisätiedot

Ohjelmointi 2. Jussi Pohjolainen. TAMK» Tieto- ja viestintäteknologia , Jussi Pohjolainen TAMPEREEN AMMATTIKORKEAKOULU

Ohjelmointi 2. Jussi Pohjolainen. TAMK» Tieto- ja viestintäteknologia , Jussi Pohjolainen TAMPEREEN AMMATTIKORKEAKOULU Ohjelmointi 2 Jussi Pohjolainen TAMK» Tieto- ja viestintäteknologia Tietotyypeistä C++ - kielessä useita tietotyyppejä Kirjaimet: char, wchar_t Kokonaisluvut: short, int, long Liukuluvut: float, double

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

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5 Kysy Karilta tai Kimmolta, jos tehtävissä on jotain epäselvää. Kerro WETOon liittyvät tekniset ongelmat suoraan Jormalle sähköpostitse (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida

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

OpenOffice.org Base 3.1.0

OpenOffice.org Base 3.1.0 OpenOffice.org Base 3.1.0 Sisällysluettelo 1 Tietokannan luominen...1 2 Taulukon eli taulun luominen...3 3 Kysely...9 4 Raportti...14 1 Tietokannan luominen Tietokanta on kokoelma tietoja, joilla on yhteys

Lisätiedot

System.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);

System.out.printf(%d / %d = %.2f%n, ekaluku, tokaluku, osamaara); Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja sisentää koodisi. Ohjelmointitehtävien osalta palautetaan

Lisätiedot

Ohjelmointi 1 C#, kevät 2013, 2. tentti

Ohjelmointi 1 C#, kevät 2013, 2. tentti ITKP102 Ohjelmointi 1 C# 15.5.2013 1 / 6 Ohjelmointi 1 C#, kevät 2013, 2. tentti Tentaattori Antti-Jussi Lakanen Tässä tentissä saa olla mukana omia muistiinpanoja yhden arkin verran. Tentin valvojalla

Lisätiedot

13 Operaattoreiden ylimäärittelyjä

13 Operaattoreiden ylimäärittelyjä 248 13 C++-kielessä voidaan operaattoreita ylimäärittää. Ylimääriteltävää operaattoria voidaan pitää ikäänkuin metodina, joka esitellään luokan esittelyssä ja määritellään luokan ulkopuolella kuten metoditkin.

Lisätiedot

Verilogvs. VHDL. Janne Koljonen University of Vaasa

Verilogvs. VHDL. Janne Koljonen University of Vaasa Verilogvs. VHDL Janne Koljonen University of Vaasa Sälää Huom! Verilogistauseita versioita: 1995, 2001 ja 2005. Kommentit Javasta tutut // ja /* */ ovat kommenttimerkkejä. Case sensitivity Isot ja pienet

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

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

17. Javan omat luokat 17.1

17. Javan omat luokat 17.1 17. Javan omat luokat 17.1 Sisällys Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 17.2 Java API Java-kielen Application Programming Interface (API)

Lisätiedot

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä 3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä Lineaarinen m:n yhtälön yhtälöryhmä, jossa on n tuntematonta x 1,, x n on joukko yhtälöitä, jotka ovat muotoa a 11 x 1 + + a 1n x n = b 1 a 21

Lisätiedot

Harjoitus 6. Käytä String-luokasta vain charat- ja length-operaatioita.

Harjoitus 6. Käytä String-luokasta vain charat- ja length-operaatioita. Nämä ovat kurssin viimeiset harjoitukset. Hyväksytyistä ratkaisuista ja läsnäoloista kerättyjen pisteiden summan tulee olla vähintään 40 % ( pistettä) tehtävien ja läsnäolopisteiden kokonaislukumäärien

Lisätiedot

Tieto- ja tallennusrakenteet

Tieto- ja tallennusrakenteet Tieto- ja tallennusrakenteet Sisältö Tyyppi, abstrakti tietotyyppi, abstraktin tietotyypin toteutus Tallennusrakenteet Taulukko Linkitetty rakenne Abstraktit tietotyypit Lista (Puu) (Viimeisellä viikolla)

Lisätiedot

Valitse ruudun yläosassa oleva painike Download Scilab.

Valitse ruudun yläosassa oleva painike Download Scilab. Luku 1 Ohjeita ohjelmiston Scilab käyttöön 1.1 Ohjelmiston lataaminen Ohjeet ohjelmiston lataamiseen Windows-koneelle. Mene verkko-osoitteeseen www.scilab.org. Valitse ruudun yläosassa oleva painike Download

Lisätiedot

Moduli 4: Moniulotteiset taulukot & Bittioperaatiot

Moduli 4: Moniulotteiset taulukot & Bittioperaatiot C! : Moniulotteiset taulukot & Bittioperaatiot 15.3.2016 Agenda Pieni kertausharjoitus Moniulotteiset taulukot Esimerkki taulukoista Tauko (bittitehtävä) Binäärioperaatioista Esimerkki (vilkaistaan IP

Lisätiedot

Excel 2010 -funktiot. Sisällys

Excel 2010 -funktiot. Sisällys Excel 2010 -funktiot 5.11.2015 Markku Könkkölä J Y / Tietohallintokeskus Soluihin viittaaminen Sisällys Laskentakaavojen kirjoittaminen, kopiointi ja arvojen vakiointi Funktioiden käyttö: Laskenta Merkkijonot

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

tietueet eri tyyppisiä tietoja saman muuttujan arvoiksi

tietueet eri tyyppisiä tietoja saman muuttujan arvoiksi tietueet eri tyyppisiä tietoja saman muuttujan arvoiksi ero taulukkoon taulukossa alkiot samantyyppisiä tietueessa alkiot voivat olla erityyppisiä tiedot kuitenkin yhteen kuuluvia ohjelmoinnin perusteet,

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

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo 15.2.2006

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo 15.2.2006 TURUN YLIOPISTO DEMO III Informaatioteknologian laitos tehtävät Olio-ohjelmoinnin perusteet / Salo 15.2.2006 1. Tässä tehtävässä tarkastellaan erääntyviä laskuja. Lasku muodostaa oman luokkansa. Laskussa

Lisätiedot

Metropolia ammattikorkeakoulu 05.02.2015 TI00AA43-3004: Ohjelmointi Kotitehtävät 3

Metropolia ammattikorkeakoulu 05.02.2015 TI00AA43-3004: Ohjelmointi Kotitehtävät 3 : http://users.metropolia.fi/~pasitr/2014-2015/ti00aa43-3004/kt/03/ratkaisut/ Tehtävä 1. (1 piste) Tee ohjelma K03T01.cpp, jossa ohjelmalle syötetään kokonaisluku. Jos kokonaisluku on positiivinen, niin

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

7. Näytölle tulostaminen 7.1

7. Näytölle tulostaminen 7.1 7. Näytölle tulostaminen 7.1 Sisällys System.out.println- ja System.out.print-operaatiot. Tulostus erikoismerkeillä. Edistyneempää tulosteiden muotoilua. 7.2 Tulostusoperaatiot System.out.println-operaatio

Lisätiedot

Harjoitus 5 (viikko 48)

Harjoitus 5 (viikko 48) Moni tämän harjoituksen tehtävistä liittyy joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Harjoitustyö edistyy sitä paremmin, mitä enemmän tehtäviä ratkaiset. Mikäli tehtävissä on jotain

Lisätiedot

Harjoitus 3 (viikko 39)

Harjoitus 3 (viikko 39) Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja sisentää koodisi. Vältä liian pitkiä rivejä. Ohjelmointitehtävien

Lisätiedot

Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö C-ohjelmassa

Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö. Muistin käyttö C-ohjelmassa ssa ohjelman käytössä suoritusaikana oleva muisti jakautuu neljään osaan: koodisegmentti datasegmentti pinosegmentti (stack) kasa (heap) ssa ohjelman koodisegmentti sisältää käännetyn ohjelmakoodin sisältö

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

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 3 vastaukset Harjoituksen aiheena ovat imperatiivisten kielten muuttujiin liittyvät kysymykset. Tehtävä 1. Määritä muuttujien max_num, lista,

Lisätiedot

Kaikkien paikallisten ääriarvojen haku

Kaikkien paikallisten ääriarvojen haku Kaikkien paikallisten ääriarvojen haku 30.4.2017 Heikki Apiola Tiedosto: opi_minimointiliven.mlx, opi_minimointiliven.m Funktio: lok_min.m (help lok_min) Lisää esimerkkejä: ex_lok_min.m Abstrakti Lähdetään

Lisätiedot

20. Javan omat luokat 20.1

20. Javan omat luokat 20.1 20. Javan omat luokat 20.1 Sisällys Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 20.2 Java API Java-kielen Application Programming Interface (API)

Lisätiedot

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang Sisällys 20. Javan omat luokat Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 20.1 20.2 Java API Java-kielen Application Programming Interface (API)

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2016-2017 4. Joukot, relaatiot ja funktiot Osa 3: Funktiot 4.3 Funktiot Olkoot A ja B joukkoja. Funktio joukosta A joukkoon B on sääntö, joka liittää yksikäsitteisesti määrätyn

Lisätiedot

Ohjelmoinnin perusteet, kurssikoe

Ohjelmoinnin perusteet, kurssikoe Ohjelmoinnin perusteet, kurssikoe 18.6.2014 Kirjoita jokaiseen konseptiin kurssin nimi, kokeen päivämäärä, nimi, TMC-tunnus ja opiskelijanumero tai henkilötunnus. Vastaukset palautetaan tehtäväkohtaisiin

Lisätiedot

Tietuetyypin määrittely toteutetaan C-kielessä struct-rakenteena seuraavalla tavalla:

Tietuetyypin määrittely toteutetaan C-kielessä struct-rakenteena seuraavalla tavalla: KERTAUSTEHTÄVIÄ Tietue Tietuetyypin määrittely toteutetaan C-kielessä struct-rakenteena seuraavalla tavalla: struct henkilotiedot char nimi [20]; int ika; char puh [10]; ; Edellä esitetty kuvaus määrittelee

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

Tekla Structures Dialogien muokkaus

Tekla Structures Dialogien muokkaus [Asiakirjan tyyppi] [Luottamuksellisuus] Dialogien muokkaus Description Author FIN Area Support Date 10.8.2010 Reviewed by Review date Approved by Approval date Change history Date Changed by Issue Tekla

Lisätiedot

17. Javan omat luokat 17.1

17. Javan omat luokat 17.1 17. Javan omat luokat 17.1 Sisällys Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 17.2 Java API Java-kielen Application Programming Interface (API)

Lisätiedot

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45 MS-A0003/A0005 Matriisilaskenta Laskuharjoitus / vko 5 Tehtävä 1 (L): Hahmottele kompleksitasoon ne pisteet, jotka toteuttavat a) z 3 =, b) z + 3 i < 3, c) 1/z >. Yleisesti: ehto z = R, z C muodostaa kompleksitasoon

Lisätiedot

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu Taulukot Taulukon määrittely ja käyttö Taulukko metodin parametrina Taulukon sisällön kopiointi toiseen taulukkoon Taulukon lajittelu esimerkki 2-ulottoisesta taulukosta 1 Mikä on taulukko? Taulukko on

Lisätiedot

Kokonaislukuaritmetiikka vs. logiikkaluupit

Kokonaislukuaritmetiikka vs. logiikkaluupit Diskreetti matematiikka, syksy 2010 Matlab-harjoitus 3 (18.11. klo 16-18 MP103) Tehtäviin vastataan tälle paperille, osoitettuihin tyhjiin alueisiin, yleensä tyhjille riveille. Tehtävät saa ja on suorastaan

Lisätiedot

mplperusteet 1. Tiedosto: mplp001.tex Ohjelmat: Maple, [Mathematica] Sievennä lauseke x 1 ( mplp002.tex (PA P1 s.2011)

mplperusteet 1. Tiedosto: mplp001.tex Ohjelmat: Maple, [Mathematica] Sievennä lauseke x 1 ( mplp002.tex (PA P1 s.2011) Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos -e mplperusteet. Tiedosto: mplp00.tex Ohjelmat: Maple, [Mathematica] Sievennä lauseke x ( x )( + x ). Kokeile funktiota simplify. 2. mplp002.tex

Lisätiedot

Ohjelmoinnin peruskurssien laaja oppimäärä

Ohjelmoinnin peruskurssien laaja oppimäärä Ohjelmoinnin peruskurssien laaja oppimäärä Luento 4: Symbolit, derivojaesimerkki, kierroksen 1 ratkaisut (mm. SICP 2.32.3.2) Riku Saikkonen 1. 11. 2011 Sisältö 1 Symbolit ja sulkulausekkeet 2 Lisää Schemestä:

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin 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ä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