Cw09 Matlab3

background image

Ćw 9. Matlab (3)

Instrukcja iteracyjna („pętla liczona”)

Pętla pozwala na wielokrotne powtarzanie bloku instrukcji. Liczna powtórzeń wynika z definicji modyfikowanej

wartości licznika pętli.

for

licznik

= warto

ść

_pocz

:

krok

:

warto

ść

_ko

ń

cowa,

instrukcja,

instrukcja,

end

Utworzyć m-plik, przetestować i wyjaśnić działanie poniższych przykładów:

Przykład 1: Wypełnianie tablicy:

for i= 1:1:10,
a(i) = 3*i - 1;
end;

disp(a)

Przykład2 : Sumowanie elementów w tablicy jednowymiarowej:

clear a;
suma = 0;

for i= 1:1:10,
a(i) = i^2,
pause, %zatrzymuje do naciśnięcia dowolnego klawisza
suma=suma+a(i);
end

disp(suma)

Przykład 3 : Wypełnianie tablicy dwuwymiarowej – "zagnieżdżenie" iteracji:

clear a;

for i= 1:1:10,
for j = 1:1:10,
a(i , j) = round(20*rand()-10); %zastanowić się co wstawiamy do tablicy
end
end

disp(a)

Przykład 4 : Sumowanie elementów w tablicy dwuwymiarowej:

clear a;
suma = 0;

for i= 1:1:5,
for j = 1:1:5,
a(i , j) = 2*i - 4* j,
pause, %zatrzymuje do naciśnięcia klawisza
suma=suma+a(i , j);
end
end

disp(suma)

Przykład 5 Sumowanie elementów wybranej kolumny:

clear a;
% tu wstawić instrukcje wypełniania tablicy
k0=input('Podaj nr kolumny do sumowania:')
suma = 0;

background image

for w= 1:1:5,
suma =suma + a(w, k0);
end

disp(suma)

Ograniczenia pętli wewnętrznej mogą być zależne od licznika pętli zewnętrznej. Wykonać i wyjaśnić poniższy

przykład:

Przykład 6:

clear a;

for i= 1:1:5,
for j = 1:1:i,
a(i , j) = 2*i - 4* j;
end
end

disp(a)

Wykonać m-plik i wyjaśnić jego działanie.

Zliczanie i sumowanie warunkowe

Zliczanie warunkowe (np. policz ile elementów w tablicy jest dodatnich) wymaga zastosowania pętli for, w któ-

rej dla każdego kroku badamy element tablicy (wykorzystując instrukcję warunkową if). Dla elementów spełniają-

cych dany warunek należy wartość pomocniczej zmiennej powiększać o 1. Po zakończeniu pętli wyświetlić wartość

zmiennej pomocniczej. Schemat działań:

%wcześniej musi być utworzona tablica jednowymiarowa M(N)
ile=0;
for

i=1:N

if

M(i)>0

ile=ile+1;

end

end

;

disp(ile)

Sumowanie warunkowe działa podobnie, z tym, że w pętli dla spełnionego warunku zwiększana jest wartość

zmiennej sumującej o wartość elementu tablicy:


%........tu ustalić postać macierzy
for

i=1:N

if

M(i)>0

suma=suma+M(i)

end

end

;

disp(suma)

Zadania

1.

Napisać m-plik, w którym zdefiniowana jest dowolna tablica 5x5, (wykorzystać funkcję rand(N),

która generuje losowo macierz kwadratową NxN), a następnie obliczana jest suma elementów

w 3-ciej kolumnie.

2.

Napisać m-plik, w którym zdefiniowana jest dowolna tablica 10x10, następnie obliczana jest

suma elementów na przekątnej głównej.

3.

Napisać m-plik, w którym zdefiniowana jest dowolna tablica 10x10, następnie obliczana jest

suma elementów na przeciwprzekątnej.

4.

Napisać m-plik, w którym zdefiniowana jest dowolna tablica 10x10, następnie obliczane jest ile

elementów jest dodatnich, a ile ujemnych.

background image

5.

Napisać m-plik, w którym zdefiniowana jest dowolna tablica 5x5, następnie obliczana jest suma

elementów dodatnich w całej tablicy (zastosować instrukcję warunkową if wewnątrz zagnież-

dżanych iteracji for).

6.

Opierając się na przykładzie 6, zsumować w tablicy elementy górnego trójkąta w tablicy (do

przeciwprzekatnej).

7.

Spróbować napisać instrukcje, które odpowiadają na pytanie: czy element o podawanej przez

użytkownika wartości (funkcja input) znajduje się w tablicy (oraz ile razy występuje).


Wyszukiwarka

Podobne podstrony:
Matlab cw1 2 zaoczni
cz 1, Matlab moj
Image Processing with Matlab 33
MATLAB graf(1)
kod matlab
Cw08 Matlab2
Matlab wiadomości wstępne
Matlab Class Chapter 1
Matlab środowisko programu
MATLAB, cz 1
Instrukcja obiekt dynamiczny matlab 2015
Matlab Programming (ang)
Matlab Class Chapter 6
OBLICZENIA MATLAB, PWR, SEE - sprawka moje
sprawozdanie matlab

więcej podobnych podstron