PRACA DOMOWA (1)
PRACA DOMOWA (1)
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)]