Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- m = Input["Vnesi redici m="]
- n = Input["Vnesi redici n="]
- A = Table[Input["A[[i,j]]="], {i, m}, {j, n}];
- B = Table[Input["B[[i,j]]="], {i, m}, {j, n}];
- Print["A+B = ", MatrixForm[A + B]];
- Print["A-B = " MatrixForm[A - B]];
- Bt = Transpose[B];
- Print["Transponirana mat. B: ", MatrixForm[Bt]];
- Print["Zbirot na elementite po dijagonala na dvete matrici e: ",
- Tr[A] + Tr[B]]
- n = Input["Vnesi red na matricata (nxn) n="]
- M = Table[Input["M[[i,j]]="], {i, n}, {j, n}];
- M // MatrixForm
- suma = 0;
- For[i = 1, i <= n, i++,
- For[j = 1, j <= n, j++,
- If[Mod[M[[i, j]], 2] == 0, suma += M[[i, j]]]
- ]
- ]
- Print["Zbirot na site parni elementi od matricata M e: ", suma];
- n = Input["Vnesi go redot na matricata M nxn n="]
- M = ConstantArray[0, {n, n}];
- M // MatrixForm
- poz = Round[n/2]
- brDzv = 1;
- For[i = 2, i <= n, i++,
- For[j = 1, j <= n, j++,
- If[j == poz, For[k = 1, k <= brDzv, k++, M[[i, j]] = "*"; j++],]
- ];
- poz--;
- brDzv += 2;
- ]
- M // MatrixForm
- (*4*)
- (*Да се реши системот равенки со Гаусов метод:
- 4x+y-z = 3,
- 2x+7y+z = 19,
- x-3y+12z = 31.
- *)
- (*Прво од системот ја пишуваме матрицата А*)
- A = {{4, 1, -1}, {2, 7, 1}, {1, -3, 12}};
- A // MatrixForm
- RHS = {3, 19, 31};
- RHS // MatrixForm
- B = Transpose[
- Append[Transpose[A],
- RHS]];(*Се додава векторот со решенија RHS на матрицата А*)
- GausovMetod[B_] := Module[{n, k, i, j, A1 = {}, RHS1 = {}},
- n = Length[B] - 1; (*n е должината на матрицата А*)
- Print["B = ", MatrixForm[B]];
- Print["Pocetok", MatrixForm[B]]; Print[" "];
- (*Се генерира горнотриаголна матрица*)
- For[k = 1, k <= n - 1, k++,
- For[i = k + 1, i <= n, i++,
- multiplier =
- N[B[[i, k]]/
- B[[k, k]]]; (*Функцијата N враќа нумеричка вредност на изразот*)
- For[j = k, j <= n + 1, j++,
- B[[i, j]] = B[[i, j]] - multiplier*B[[k, j]]
- ]
- ];
- (*Печатење на секој чекор*)
- Print["Cekor=", k, MatrixForm[B]]; Print[" "]
- ];
- Print["Matricata B = ", MatrixForm[B]];
- Print["Resenijata so RowReduce: ", MatrixForm[RowReduce[B]]];
- (*---------------------*)
- A1 = Take[B, {1, n}, {1, n}];
- MatrixForm[A1];
- RHS1 = Take[B, {1, n}, {n + 1, n + 1}];
- MatrixForm[RHS1];
- Print["Resenija na sistemot se: ", LinearSolve[A1, RHS1]];
- Print["Proverka so Solve: ",
- Solve[{ 4*x + y - z , 2*x + 7*y + z, x - 3*y + 12*z } == {3, 19,
- 31}]];
- Print["Proverka so LinearSolve: ", LinearSolve[A, RHS]];
- (*5*)
- A = {{4, 3, 4, 2}, {1, 2, 1, 3}, {3, 2, 2, 1}, {1, 1, 2, 1}}
- B = {{5, 6, 4, 3}, {3, 6, 4, 2}, {1, 6, 1, 1}, {3, 6, 4, 2}}
- Print["A = ", MatrixForm[A]];
- Print["B = ", MatrixForm[B]];
- Apom = Take[A, -3];
- Print["Apom = ", MatrixForm[Apom]];
- Bpom = Take[B, 3];
- Print["Bpom = ", MatrixForm[Bpom]];
- If[Dimensions[Apom] == Dimensions[Bpom], Bt = Transpose[Bpom];
- Print["B transponirana = ", MatrixForm[Bt]];
- proiz = Apom.Bt;
- Print["Proizvodot na prvata i transponirana od vtorata matrica e: ",
- MatrixForm[proiz]]
- ]
- (*Zamena na el. od 1vata matrica*)
- pom = {};
- A2 = Apom;
- pom = A2[[2]];
- A2[[2]] = A2[[3]];
- A2[[3]] = pom;
- Print["Matricata, ", MatrixForm[Apom],
- " so zameneti 2-ra i 3-ta redica: ", MatrixForm[A2]];
- B2 = Bpom;
- For[i = 1, i <= 3, i++,
- For[j = 1, j <= 4, j++,
- B2[[i, j]] *= 2;
- ]
- ]
- Print["Matricata, ", MatrixForm[Bpom],
- " so pomnozen sekoj element so 2: ", MatrixForm[B2]];
- Join[A2, B2] // MatrixForm
- (*6*)
- A = {};
- n = Input["Vnesete red nxn, n="]
- For[i = 1, i <= n, i++,
- pom = {};
- For[j = 1, j <= n, j++,
- AppendTo[pom, Input["A[i,j]="]]
- ];
- AppendTo[A, pom];
- ]
- Print["A = ", MatrixForm[A]];
- If[MatrixQ[A], B = MatrixPower[A, 5]; Print["Minori: ", Minors[B]],];
- MatrixForm[UpperTriangularize[A]]
- MatrixForm[LowerTriangularize[A]]
- (*grafovi 1*)
- n = 7
- a = MakeGraph[Range[n], (Mod[#1, #2] == 1) &]
- ShowGraph[a]
- n = 10
- b = MakeGraph[Range[n], (Mod[#1, #2] < 3) &]
- ShowGraph[b]
- n = 12
- c = MakeGraph[Range[n], (Floor[#1/#2] > 5 || Floor[#1/#2] < 3) &]
- ShowGraph[c]
- n = 20
- d = MakeGraph[Range[n], (#1^2 + #1 > #2^3 - #2) &]
- ShowGraph[d]
- n = 15
- e = MakeGraph[
- Range[2, n + 1], (#1 - IntegerPart[Sqrt[#1]] >= Mod[#2, (#2 - 1)]) &]
- ShowGraph[e]
- (*2*)
- << DiscreteMath`Combinatorica`
- n = Input["Vnesi N"]
- m = Input["Vnesi M"]
- i = Input["Vnesi I"]
- j = Input["Vnesi J"]
- completegraph = CompleteGraph[n]
- ShowGraph[
- SetGraphOptions[
- AddVertex[
- completegraph, {i, j}], {{1, 2, VertexColor -> Blue,
- VertexStyle -> Disk[Large]}, {n, VertexColor -> Red}},
- EdgeColor -> Green]]
- stargraph = Star[m]
- ShowGraph[DeleteEdge[stargraph, {i, j}]]
- (*3*)
- << DiscreteMath`Combinatorica`
- n = Input["Vnesi N"]
- m = Input["Vnesi M"]
- t = Input["Vnesi T"]
- loopgraph1 = MakeGraph[Range[n], (#1 == #2) &]
- loopgraph2 = MakeGraph[Range[m], (#1 == #2) &]
- For[i = 1, i < n, i++, loopgraph1 = AddEdge[loopgraph1, {i, i + 1}];
- loopgraph2 = DeleteVertex[loopgraph2, i];]
- For[i = 0, i < m, i++, loopgraph1 = AddVertex[loopgraph1];
- loopgraph2 = DeleteEdge[loopgraph2, {i, i}];]
- ShowGraph[loopgraph1]
- ShowGraph[loopgraph2]
- uniongraph = GraphUnion[loopgraph1, loopgraph2]
- ShowGraph[uniongraph]
- ShowGraph[InduceSubgraph[uniongraph, RandomSubset[Range[t]]]]
- (*4*)
- While[1 == 1, opcija = Input["Izberi Opcija"];
- If[opcija == 0, Break[]];
- If[opcija == 1, n = Input["vnesi n"];
- graph = CompleteGraph[n];];
- If[opcija == 2, n = Input["vnesi n"];
- graph = Star[n];];
- If[opcija == 3, graph = AddVertex[graph]];
- If[opcija == 4, index = Input["Vnesi indeks"];
- graph = DeleteVertex[graph, index]];
- If[opcija == 5, 19 teme1 = Input["Vnesi prvo teme"];
- teme2 = Input["Vnesi vtoro teme"];
- graph = AddEdge[opcija, {teme1, teme2}]];
- If[opcija == 6, teme1 = Input["Vnesi prvo teme"];
- teme2 = Input["Vnesi vtoro teme"];
- graph = DeleteEdge[graph, {teme1, teme2}]]]
- ShowGraph[graph]
- (*5*)
- << DiscreteMath`Combinatorica`
- graf1 = MakeGraph[Range[5], (#1 == #2 || #1 < #2) &];
- graf2 = MakeGraph[Range[5], (#1 == #2 || #1 > #2) &];
- Isomorphism[graf1, graf2, All]
- graf3 = CompleteGraph[5]
- graf4 = CompleteGraph[5]
- Isomorphism[graf3, graf4, All]
- (*6*)
- << DiscreteMath`Combinatorica`
- n = Input["Vnesi vrednost za n:"]
- graf = CompleteGraph[n]
- table = TableForm[ToAdjacencyMatrix[graf]]
- Vertices[graf]
- brojac = 0;
- suma = 0;
- For[i = 1, i <= n, i++, 20 brojac = 0;
- For[j = 1, j <= n, j++,
- If[table[[1, i, j]] == 1 || table[[1, j, i]] == 1, brojac++];];
- suma += brojac;]
- Print[suma]
- rebra = suma/2
- Print[rebra]
- (*7*)
- << DiscreteMath`Combinatorica`
- n = 5
- (*graph=MakeGraph[Range[4],(True)&]*)
- graph = OrientGraph[RandomGraph[n, 0.85]]
- ShowGraph[graph]
- tabela = TableForm[ToAdjacencyMatrix[graph]]
- izleg = 0
- vleg = 0
- For[i = 1, i <= n, i++,
- For[j = 1, j <= n, j++, If[tabela[[1, i, j]] == 1, izleg++];
- If[tabela[[1, j, i]] == 1, vleg++];]]
- rebra = izleg
- Print[rebra]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement