Diskreetti matematiikka, syksy 2010
Matlab-harjoitus 1 (to 14.10. klo 16-18 MP103 ja pe 15.10. klo 12-14 MP103)


Paperilla jaetaan kopiona Matlab-ohje; pidä se aina mukana. Katso myös demotehtäväsivulta linkit!

  1. Laskentoa. Käynnistä Matlab. Pian avautuu komentoakkuna, jossa valmiusmerkki » ilmoittaa, että Matlab on valmis ottamaan vastaan käskyjä.
  2. a) Kokeillaanpa aluksi peruslaskutoimituksia. Suorita seuraavat ja vastaa kysymykseen:
    » 2 + 3
    » 2 + 3.4
    » 4/3
    » 6/2
    » 2+3*(2+5i)
    » i^2
    » exp(log(3))
    » i^3
    » a = 4; b = 6;
    » a^b
    
    
    Mitä huomaat kokonaislukujen ja liukulukujen käsittelystä: 


    b) Mitä tehdään seuraavissa:

    » a == 4
    » b == 4
    » b == 6
    
    

  3. a) Kokeillaan vektorilaskuja:
  4. » v = [2,0,4,3,6,5,-3,3,1]
    » abs(v)
    » cos(v)
    » v + 1
    » v*2
    » v^2
    » v.^2
    
    
    Mistä virheilmoitus edellä johtui? 


    b) Matriiseja:

    » YK = 1:10
    » YK*(YK.')
    » (YK.')*YK
    »
    » A = [1 2 3; 4 5 6; 7 8 9; 10 11 12]
    » A.^2
    » 2*A, A/3
    » A(2,3), A(:,2), A
    
    
    Miten poimitaan matriisin A toinen rivi? 
  5. Vertailuja. Vertailut tuottavat totuusarvoisia olioita, joita taas voi edelleen hyödyntää.
  6. a) Edellä oli määritelty vaakavektori v:
    » v
    » v > 1
    » v(v > 1)
    » v(v(v>1))
    
    
    Selitä keskimmäisten käskyjen toiminta: 


    Keksi tilanne, jossa viimeinen käsky ei toimikaan: 



    b) Indeksoinneista:

    » v
    » v(1)
    » I = v > 1
    » v(I)
    » I(3) = 0
    » I(4) = -1
    » I(3) = 6.1
    » v(I)
    
    
    Mitä huomaat logiikkavektoreista? 


    c) Mutta sitten voi tulla ongelmiakin:

    » J = [1 0 1 0 1 0 1 0 1]
    » v(J)
    » help logical
    » who
    » whos
    » J = logical(J)
    » v(J)
    
    
    Miten siis logiikkavektoreita ei pidä määritellä? 
  7. Matriisien luomisesta. Suorita käskyt:
  8. » A = rand(5,7),size(A)
    » A > 0.8          % <-- Mitä tehdään tässä? _________________
    » B = (A > 0.8), C = (A > 0.2)
    » any(B), all(B)
    » any(C), all(C)
    
    
    a) Mitä laskee any(all(B))
    b) Mitä laskee all(any(C))
    c) Mitä etsii find(C), mitä taas [I,J] = find(C)
    d) Mitä etsii find(~all(C))
  9. "Todenna" kokeilemalla satunnaismatriisien avulla demojen 3 tehtävän 8 tulokset MT\R = \lnot MR, Matlabissa ~MR; MRÈS = MRÚMS, Matlabissa MR | MS; MRÇS = MRÙMS, Matlabissa MR & MS; MR\S = MRÙ\lnot MS, Matlabissa MR & ~MS (MR ja MS luomiasi matriiseja Matlabissa).


File translated from TEX by TTH, version 3.80.
On 13 Oct 2010, 16:19.