Zadaci za samostalni rad, 4. vježbe

Informacija

Svaki student može na vježbama dobiti točno jedan zadatak i treba ga SAMOSTALNO, i u potpunosti ispravno riješiti. Za svaki riješeni zadatak student dobiva 1 bod. 

Na kraju semestra za studenta koji ima 3 ili više bodova smatrati ćemo da je kolokvirao programiranje.

Za jednim računalom, zbog zahtjeva samostalnosti, tokom izrade ovih zadatak može sjediti samo jedan student.

1. zadatak

Napišite program koji ima za argument matricu a i računa koliko elemenata matrice ima koji su  veći od 2.

Broj redaka m i stupaca n matrice a se dobije naredbom 
                          {m, n}=Dimensions[a].

NE treba provoditi nikakve kontrole argumenta.

izrada

prog41[a_List ]:= Module[{m, n,broj=0},
{m, n}=Dimensions[a];
Do[
Do[
If[ a[[i,j]]>2, broj=broj+1 ];
,
{j, 1, n}
];
,{i, 1, m}
];
Return[broj];
];

testiranje

a={{-2, 3, -7},{1, -5, 3}, {-4, 8, 2}}; 
prog41[a]

2. zadatak

Napišite program koji ima za argument matricu i računa umnožak elemenata te matrice koji su veći od 2. 

Varijablu umnozak u koju će se "spremiti" umnožak elemenata treba na početku staviti jednaku 1. 

NE treba provoditi nikakve kontrole argumenta.

izrada

prog42[x_List] := Module[{m,n, umnozak=1}, 
{m, n}=Dimensions[x];
Do[
Do[
If[x[[i, j]]> 2,umnozak = umnozak*x[[i,j]]; ];
,
{j, 1, n}
];
,
{i, 1, m}
];
Return[umnozak];
];

testiranje

a={{-2, 3, -7},{1, -5, 3}, {-4, 8, 2}}; 
prog42[a]

3. zadatak

Napišite program koji ima za argument matricu i računa zbroj  njenih elemenata manjih od 2 . 

Varijablu zbroj u koju će se "spremiti" rezultat  treba na početku staviti jednaku 0. 

NE treba provoditi nikakve kontrole argumenta.

izrada

prog43[x_List] := Module[{m,n, zbroj=0}, 
{m, n}=Dimensions[x];
Do[
Do[
If[ x[[i, j]]< 2, zbroj=zbroj+x[[i,j]];  ];
,
{j, 1, n}
];
,
{i, 1, m}
];
Return[zbroj];
];

testiranje

a={{-2, 3, -7},{1, -5, 9}, {-4, 8, 2}}; 
prog43[a]

4. zadatak

Napišite program koji ima za argument matricu a i računa matricu c koja za koju je c=-a.

Broj redaka m i stupaca n matrice a se dobije naredbom 
                          {m, n}=Dimensions[a].
Varijablu c u koju će se "spremiti" rezultat treba inicijalizirati naredbom 
                     ConstantArray[0, {m, n}]. 

NE treba provoditi nikakve kontrole argumenta.

izrada

prog44[a_List ]:= Module[{m, n, c},
{m, n}=Dimensions[a];
c=ConstantArray[0, {m, n}];
Do[
Do[
c[[i,j]]=-a[[i,j]]
(*   ili rez[[i,j]]=(-1)*x[[i,j]];  *)
,
{j, 1, n}
];
,{i, 1, m}
];
Return[c];
];

testiranje

a={{-2, 3, -7},{1, -5, 3}, {-4, 8, 2}}; 
prog44[a]

5. zadatak

Napišite program koji ima za argument matricu a i računa zbroj njenih pozitivnih elemenata.

Broj redaka m i stupaca n matrice a se dobije naredbom 
                          {m, n}=Dimensions[a].

NE treba provoditi nikakve kontrole argumenta.

izrada

prog45[a_List ]:= Module[{m, n, zbroj=0},
{m, n}=Dimensions[a];
Do[
Do[
If[ a[[i,j]]>0, zbroj=zbroj+a[[i,j]] ];
,
{j, 1, n}
];
,{i, 1, m}
];
Return[zbroj];
];

testiranje

a={{-2, 3, -7},{1, -5, 3}, {-4, 8, 2}}; 
prog45[a]

6. zadatak

Napišite program koji ima za argument matricu a i računa 3.

Broj redaka m i stupaca n matrice a se dobije naredbom 
                          {m, n}=Dimensions[a].

NE treba provoditi nikakve kontrole argumenta.

izrada

prog46[a_List ]:= Module[{m, n,broj=0},
{m, n}=Dimensions[a];
Do[
Do[
If[ a[[i,j]]<3, broj=broj+1 ];
,
{j, 1, n}
];
,{i, 1, m}
];
Return[broj];
];

testiranje

a={{-2, 3, -7},{1, -5, 3}, {-4, 8, 2}}; 
prog46[a]

7. zadatak

Napišite program koji ima za argument matricu a i računa koliko matrica ima negativnih elemenata.

Broj redaka m i stupaca n matrice a se dobije naredbom 
                          {m, n}=Dimensions[a].

NE treba provoditi nikakve kontrole argumenta.

izrada

prog47[a_List ]:= Module[{m, n,broj=0},
{m, n}=Dimensions[a];
Do[
Do[
If[ a[[i,j]]<0, broj=broj+1 ];
,
{j, 1, n}
];
,{i, 1, m}
];
Return[broj];
];

testiranje

a={{-2, 3, -7},{1, -5, 3}, {-4, 8, 2}}; 
prog47[a]

8. zadatak

Napišite program koji ima za argument matricu i računa umnožak negativnih elemenata te matrice. 

Varijablu umnozak u koju će se "spremiti" umnožak elemenata treba na početku staviti jednaku 1. 

NE treba provoditi nikakve kontrole argumenta.

izrada

prog48[x_List] := Module[{m,n, umnozak=1}, 
{m, n}=Dimensions[x];
Do[
Do[
If[x[[i, j]]<0,umnozak = umnozak*x[[i,j]]; ];
,
{j, 1, n}
];
,
{i, 1, m}
];
Return[umnozak];
];

testiranje

a={{-2, 3, -7},{1, -5, 9}, {-4, 8, 2}}; 
prog48[a]