Zadanie (A)

Utwórz dwie macierze A i B o wymiarach 5x5 zawierające całkowite liczby losowe z przedziału [-10,10 ]. Następnie, utwórz:

  • macierz L, która zawiera 1 tam, gdzie obie macierze maja liczbę ujemna, i zero wszędzie indziej,

  • macierz M, która zawiera 2 tam, gdzie obie macierze maja liczby parzyste, i 1 wszędzie indziej.

Rozwiązanie

% liczby losowe całkowite z przedziału [-10,10] w macierzach o wymiarach 5x5

>> A=round(rand(5)*20)-10;

>> B=round(rand(5)*20)-10;

% macierz L zawiera 1 tam, gdzie obie macierze maja liczbę ujemna, i zero wszędzie indziej

>> L = (A<0 & B<0);

% macierz K zawiera 2 tam, gdzie obie macierze maja liczby parzyste, i 1 wszędzie indziej

>> K = (mod(A,2)==0 & mod(B,2)==0) + ones(5);

% wynik

>> disp('macierz A:');

>> disp(A);

>> disp('macierz B:');

>> disp(B);

>> disp('macierz L zawiera 1 tam, gdzie obie macierze A i B maja liczbę ujemna, i zero wszędzie indziej');

>> disp(L);

>> disp('macierz K zawiera 2 tam, gdzie obie macierze A i B maja liczby parzyste, i 1 wszędzie indziej');

>> disp(K);

 

Zadanie (B)

Poproś użytkownika o wprowadzenie z klawiatury liczby, zapisz ją do zmiennej n. Wprowadź do MATLABa macierz A - tabliczkę mnożenia nxn, w komórce (i,j) macierzy powinna znajdować się wartość i*j (w sprytny sposób! można to zrobić w dwóch poleceniach). Skonstruuj tez macierz B o wymiarach nxn zawierającą zera i jedynki w losowych miejscach. Na końcu, skonstruuj macierz C, której dolnotrójkątna część będzie identyczna z dolnotrójkątną częścią macierzy A, zaś górnotrójkątna część będzie identyczna z górnotrójkątną częścią macierzy B. Przekątna macierzy C ma być sumą przekątnych macierzy A i B. (wskazówka: wypróbuj polecenia tril i triu.)

Rozwiązanie

>> n=input('Podaj liczbe naturalna: ')

       v=(1:n);

       A=v'*v

       B=round(rand(n))

       C=tril(A)+triu(B)

 

Zadanie (C)

Utwórz wektor W składający się z kolejnych liczb pierwszych mniejszych bądź równych 53. Następnie stwórz 2 wektory (V1 i V2) składające się z co drugiej liczby pierwszej z wektora W (wskazówka: zakresy o odpowiednim kroku). Na końcu stwórz macierz, w której te wektory będą stanowiły wiersze.

Rozwiązanie

>> W = primes(53)

>> iV1 = (1:2:length(W))

>> iV2 = (2:2:length(W))

>> odp = [ W(iV1) ; W(iV2)]

 

 

Ostatnia modyfikacja: poniedziałek, 16.09.2013, 11:47 AM