opgaver:Uge1mandag
Pia Jensen (Talk | contribs) |
Pia Jensen (Talk | contribs) |
||
| Line 12: | Line 12: | ||
Lad <code>x = [2 5 1 6]</code>. | Lad <code>x = [2 5 1 6]</code>. | ||
| − | + | # Addér 16 til hvert element. | |
| − | Addér 16 til hvert element. | + | # Addér 3 til alle ulige-indeks elementerne. |
| − | + | # Udregn kvadratroden af hvert element. | |
| − | + | # Udregn kvadratet af hvert element. | |
| − | Addér 3 til alle ulige-indeks elementerne. | + | |
| − | + | ||
| − | + | ||
| − | Udregn kvadratroden af hvert element. | + | |
| − | + | ||
| − | + | ||
| − | Udregn kvadratet af hvert element. | + | |
| Line 28: | Line 21: | ||
Lad <code>x = [3 2 6 8]'</code> og <code>y = [4 1 3 5]'</code>. (NB. <code>x</code> og <code>y</code> bør være søjlevektorer). | Lad <code>x = [3 2 6 8]'</code> og <code>y = [4 1 3 5]'</code>. (NB. <code>x</code> og <code>y</code> bør være søjlevektorer). | ||
| − | + | # Addér summen af elementerne i <code>x</code> til <code>y</code>. | |
| − | Addér summen af elementerne i <code>x</code> til <code>y</code>. | + | # Hæv hvert element af <code>x</code> i potensen specificeret af det tilsvarende element i <code>y</code>. |
| − | + | # Dividér hvert element i <code>y</code> med det tilsvarende element i <code>x</code>. | |
| − | + | # Gang hvert element i <code>x</code> med det tilsvarende element i <code>y</code>, og gem resultatet i den ny variabel <code>z</code>. | |
| − | Hæv hvert element af <code>x</code> i potensen specificeret af det tilsvarende element i <code>y</code>. | + | # Addér elementerne i <code>z</code> og gem resultatet i den ny variabel <code>w</code>. |
| − | + | # Udregn <code>x'*y - w</code> og fortolk resultatet. | |
| − | + | ||
| − | Dividér hvert element i <code>y</code> med det tilsvarende element i <code>x</code>. | + | |
| − | + | ||
| − | + | ||
| − | Gang hvert element i <code>x</code> med det tilsvarende element i <code>y</code>, og gem resultatet i den ny variabel <code>z</code>. | + | |
| − | + | ||
| − | + | ||
| − | Addér elementerne i <code>z</code> og gem resultatet i den ny variabel <code>w</code>. | + | |
| − | + | ||
| − | + | ||
| − | Udregn <code>x'*y - w</code> og fortolk resultatet. | + | |
| Line 50: | Line 32: | ||
Udregn de følgende MATLAB udtryk i hånden, og brug så MATLAB til at tjekke resultaterne: | Udregn de følgende MATLAB udtryk i hånden, og brug så MATLAB til at tjekke resultaterne: | ||
| − | + | # <code>2 / 2 * 3</code> | |
| − | <code>2 / 2 * 3</code> | + | # <code>6 - 2 / 5 + 7 ^ 2 - 1</code> |
| − | + | # <code>10 / 2 \ 5 - 3 + 2 * 4</code> | |
| − | + | # <code>3 ^ 2 / 4</code> | |
| − | <code>6 - 2 / 5 + 7 ^ 2 - 1</code> | + | # <code>3 ^ 2 ^ 2</code> |
| − | + | # <code>2 + round(6 / 9 + 3 * 2) / 2 - 3</code> | |
| − | + | # <code>2 + floor(6 / 9 + 3 * 2) / 2 - 3</code> | |
| − | <code>10 / 2 \ 5 - 3 + 2 * 4</code> | + | # <code>2 + ceil(6 / 9 + 3 * 2) / 2 - 3</code> |
| − | + | ||
| − | + | ||
| − | <code>3 ^ 2 / 4</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>3 ^ 2 ^ 2</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>2 + round(6 / 9 + 3 * 2) / 2 - 3</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>2 + floor(6 / 9 + 3 * 2) / 2 - 3</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>2 + ceil(6 / 9 + 3 * 2) / 2 - 3</code> | + | |
| Line 78: | Line 45: | ||
Lav en vektor <code>x</code> med elementerne... | Lav en vektor <code>x</code> med elementerne... | ||
| − | + | # <code>2, 4, 6, 8, ...</code> | |
| − | <code>2, 4, 6, 8, ...</code> | + | # <code>10, 8, 6, 4, 2, 0, -2, -4</code> |
| − | + | # <code>1, 1/2, 1/3, 1/4, 1/5, ...</code> | |
| − | + | # <code>0, 1/2, 2/3, 3/4, 4/5, ... </code> | |
| − | <code>10, 8, 6, 4, 2, 0, -2, -4</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>1, 1/2, 1/3, 1/4, 1/5, ...</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>0, 1/2, 2/3, 3/4, 4/5, ... </code> | + | |
| Line 102: | Line 62: | ||
Givet en vektor, <code>t</code>, med længde <code>n</code>, lav MATLAB udtryk der vil udregne de følgende udtryk. Test at de virker for <code>t = 1:0.2:2</code>. | Givet en vektor, <code>t</code>, med længde <code>n</code>, lav MATLAB udtryk der vil udregne de følgende udtryk. Test at de virker for <code>t = 1:0.2:2</code>. | ||
| − | + | # ln(2 + t + t<sup>2</sup>) | |
| − | ln(2 + t + t<sup>2</sup>) | + | # e<sup>t</sup>(1 + cos(3t)) |
| − | + | # cos<sup>2</sup>(t) + sin<sup>2</sup>(t) | |
| − | + | # tan<sup>-1</sup>(1) (dette er den ''inverse'' tangentfunktion) | |
| − | e<sup>t</sup>(1 + cos(3t)) | + | # cot(t) |
| − | + | # sec<sup>2</sup>(t) + \cot(t) - 1 | |
| − | + | ||
| − | cos<sup>2</sup>(t) + sin<sup>2</sup>(t) | + | |
| − | + | ||
| − | + | ||
| − | tan<sup>-1</sup>(1) (dette er den ''inverse'' tangentfunktion) | + | |
| − | + | ||
| − | + | ||
| − | cot(t) | + | |
| − | + | ||
| − | + | ||
| − | sec<sup>2</sup>(t) + \cot(t) - 1 | + | |
| Line 126: | Line 75: | ||
Givet <code>x = [3 1 5 7 9 2 6]</code>, forklar hvad de følgende kommandoer "betyder": | Givet <code>x = [3 1 5 7 9 2 6]</code>, forklar hvad de følgende kommandoer "betyder": | ||
| − | + | # <code>x(3)</code> | |
| − | <code>x(3)</code> | + | # <code>x(1:7)</code> |
| − | + | # <code>x(1:end)</code> | |
| − | + | # <code>x(1:end-1)</code> | |
| − | <code>x(1:7)</code> | + | # <code>x(6:-2:1)</code> |
| − | + | # <code>x([1 6 2 1 1])</code> | |
| − | + | # <code>sum(x)</code> | |
| − | <code>x(1:end)</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>x(1:end-1)</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>x(6:-2:1)</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>x([1 6 2 1 1])</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>sum(x)</code> | + | |
| Line 151: | Line 87: | ||
Givet array'et <code>A = [ 2 4 1 ; 6 7 2 ; 3 5 9]</code>, find kommandoerne der behøves for at... | Givet array'et <code>A = [ 2 4 1 ; 6 7 2 ; 3 5 9]</code>, find kommandoerne der behøves for at... | ||
| − | + | # definere en vektor <code>x1</code> der indholder den første række af <code>A</code>. | |
| − | definere en vektor <code>x1</code> der indholder den første række af <code>A</code>. | + | # definere et array <code>y</code> der indeholder de sidste 2 rækker af <code>A</code>. |
| − | + | # udregne summen over kolonnerne i <code>A</code>. | |
| − | + | # udregne summen over rækkerne i <code>A</code>. | |
| − | definere et array <code>y</code> der indeholder de sidste 2 rækker af <code>A</code>. | + | # udregne standardafvigelsen af gennemsnittet for hver kolonne i <code>A</code> (NB. standardafvigelsen af gennemsnittet er defineret som standardafvigelsen divideret med kvadratroden af antallet af elementer der bruges til at udregne gennemsnittet). |
| − | + | ||
| − | + | ||
| − | udregne summen over kolonnerne i <code>A</code>. | + | |
| − | + | ||
| − | + | ||
| − | udregne summen over rækkerne i <code>A</code>. | + | |
| − | + | ||
| − | + | ||
| − | udregne standardafvigelsen af gennemsnittet for hver kolonne i <code>A</code> (NB. standardafvigelsen af gennemsnittet er defineret som standardafvigelsen divideret med kvadratroden af antallet af elementer der bruges til at udregne gennemsnittet). | + | |
| Line 170: | Line 97: | ||
Givet arrays'ene <code>x = [1 4 8]</code>, <code>y = [2 1 5]</code> og <code>A = [3 1 6 ; 5 2 7]</code>, find ud af hvilke udtryk der kan udføres korrekt, og giv resultaterne. Hvis udtrykket ikke kan udføres, så find ud af hvorfor. Kommandoen <code>whos</code> kan være smart at bruge her. | Givet arrays'ene <code>x = [1 4 8]</code>, <code>y = [2 1 5]</code> og <code>A = [3 1 6 ; 5 2 7]</code>, find ud af hvilke udtryk der kan udføres korrekt, og giv resultaterne. Hvis udtrykket ikke kan udføres, så find ud af hvorfor. Kommandoen <code>whos</code> kan være smart at bruge her. | ||
| − | + | # <code>x + y</code> | |
| − | <code>x + y</code> | + | # <code>x + A</code> |
| − | + | # <code>x' + y</code> | |
| − | + | # <code>A - [x' y']</code> | |
| − | <code>x + A</code> | + | # <code>[x ; y']</code> |
| − | + | # <code>[x ; y]</code> | |
| − | + | # <code>A - 3</code> | |
| − | <code>x' + y</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>A - [x' y']</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>[x ; y']</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>[x ; y]</code> | + | |
| − | + | ||
| − | + | ||
| − | <code>A - 3</code> | + | |
Revision as of 10:36, 5 March 2012
Disse simple øvelser skal laves som en warm-up til MATLAB. Dem der allerede er trygge ved at bruge MATLAB kan nøjes med at skimme dem igennem - men det anbefales at I går igennem dem alle for at være sikre på at I ved hvad I laver!
Opgaverne er taget fra [1] (Basic syntax and command-line exercises 1-6 og 8, samt Basic array exercises 1-3).
Contents |
Simpel syntaks og kommando-linie
Opgave 1
Lav en vektor bestående af de lige heltal mellem 31 og 75.
Opgave 2
Lad x = [2 5 1 6].
- Addér 16 til hvert element.
- Addér 3 til alle ulige-indeks elementerne.
- Udregn kvadratroden af hvert element.
- Udregn kvadratet af hvert element.
Opgave 3
Lad x = [3 2 6 8]' og y = [4 1 3 5]'. (NB. x og y bør være søjlevektorer).
- Addér summen af elementerne i
xtily. - Hæv hvert element af
xi potensen specificeret af det tilsvarende element iy. - Dividér hvert element i
ymed det tilsvarende element ix. - Gang hvert element i
xmed det tilsvarende element iy, og gem resultatet i den ny variabelz. - Addér elementerne i
zog gem resultatet i den ny variabelw. - Udregn
x'*y - wog fortolk resultatet.
Opgave 4
Udregn de følgende MATLAB udtryk i hånden, og brug så MATLAB til at tjekke resultaterne:
-
2 / 2 * 3 -
6 - 2 / 5 + 7 ^ 2 - 1 -
10 / 2 \ 5 - 3 + 2 * 4 -
3 ^ 2 / 4 -
3 ^ 2 ^ 2 -
2 + round(6 / 9 + 3 * 2) / 2 - 3 -
2 + floor(6 / 9 + 3 * 2) / 2 - 3 -
2 + ceil(6 / 9 + 3 * 2) / 2 - 3
Opgave 5
Lav en vektor x med elementerne...
-
2, 4, 6, 8, ... -
10, 8, 6, 4, 2, 0, -2, -4 -
1, 1/2, 1/3, 1/4, 1/5, ... -
0, 1/2, 2/3, 3/4, 4/5, ...
Opgave 6
Lav en vektor x med elementerne
xn = (-1)n+1/(2n-1)
Summér elementerne i versionen af denne vektor med 100 elementer.
Opgave 8
Givet en vektor, t, med længde n, lav MATLAB udtryk der vil udregne de følgende udtryk. Test at de virker for t = 1:0.2:2.
- ln(2 + t + t2)
- et(1 + cos(3t))
- cos2(t) + sin2(t)
- tan-1(1) (dette er den inverse tangentfunktion)
- cot(t)
- sec2(t) + \cot(t) - 1
Simple arrays
Opgave 1
Givet x = [3 1 5 7 9 2 6], forklar hvad de følgende kommandoer "betyder":
-
x(3) -
x(1:7) -
x(1:end) -
x(1:end-1) -
x(6:-2:1) -
x([1 6 2 1 1]) -
sum(x)
Opgave 2
Givet array'et A = [ 2 4 1 ; 6 7 2 ; 3 5 9], find kommandoerne der behøves for at...
- definere en vektor
x1der indholder den første række afA. - definere et array
yder indeholder de sidste 2 rækker afA. - udregne summen over kolonnerne i
A. - udregne summen over rækkerne i
A. - udregne standardafvigelsen af gennemsnittet for hver kolonne i
A(NB. standardafvigelsen af gennemsnittet er defineret som standardafvigelsen divideret med kvadratroden af antallet af elementer der bruges til at udregne gennemsnittet).
Opgave 3
Givet arrays'ene x = [1 4 8], y = [2 1 5] og A = [3 1 6 ; 5 2 7], find ud af hvilke udtryk der kan udføres korrekt, og giv resultaterne. Hvis udtrykket ikke kan udføres, så find ud af hvorfor. Kommandoen whos kan være smart at bruge her.
-
x + y -
x + A -
x' + y -
A - [x' y'] -
[x ; y'] -
[x ; y] -
A - 3