EFL 1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.txt +36 -0
- data/lib/EFL.rb +494 -0
- data/lib/EFL_array.rb +20 -0
- data/lib/EFL_errors.rb +48 -0
- data/lib/EFL_hash.rb +18 -0
- data/lib/EFL_production.rb +49 -0
- data/lib/EFL_regexp.rb +112 -0
- data/lib/EFL_regexp_generator.rb +70 -0
- data/lib/EFL_substitution.rb +221 -0
- data/lib/EFL_syntactic_sugar.rb +67 -0
- data/lib/Hash Doc.doc +0 -0
- data/lib/Limitaciones.txt +3 -0
- data/lib/doc/classes/Generator.html +634 -0
- data/lib/doc/classes/Generator.src/M000008.html +18 -0
- data/lib/doc/classes/Generator.src/M000009.html +18 -0
- data/lib/doc/classes/Generator.src/M000010.html +18 -0
- data/lib/doc/classes/Generator.src/M000011.html +18 -0
- data/lib/doc/classes/Generator.src/M000012.html +18 -0
- data/lib/doc/classes/Generator.src/M000013.html +18 -0
- data/lib/doc/classes/Generator.src/M000014.html +18 -0
- data/lib/doc/classes/Generator.src/M000015.html +18 -0
- data/lib/doc/classes/Generator.src/M000016.html +28 -0
- data/lib/doc/classes/Generator.src/M000017.html +24 -0
- data/lib/doc/classes/Generator.src/M000018.html +157 -0
- data/lib/doc/classes/Generator.src/M000019.html +25 -0
- data/lib/doc/classes/Generator.src/M000020.html +30 -0
- data/lib/doc/classes/Generator.src/M000021.html +32 -0
- data/lib/doc/classes/Generator.src/M000022.html +22 -0
- data/lib/doc/classes/Generator.src/M000023.html +18 -0
- data/lib/doc/classes/Generator.src/M000024.html +27 -0
- data/lib/doc/classes/Generator.src/M000025.html +22 -0
- data/lib/doc/classes/Generator.src/M000026.html +18 -0
- data/lib/doc/classes/Generator.src/M000027.html +27 -0
- data/lib/doc/classes/Regexp.html +271 -0
- data/lib/doc/classes/Regexp.src/M000028.html +37 -0
- data/lib/doc/classes/Regexp.src/M000029.html +29 -0
- data/lib/doc/classes/Regexp.src/M000030.html +32 -0
- data/lib/doc/created.rid +1 -0
- data/lib/doc/files/EFL_rb.html +147 -0
- data/lib/doc/files/EFL_regexp_generator_rb.html +242 -0
- data/lib/doc/files/EFL_regexp_generator_rb.src/M000003.html +27 -0
- data/lib/doc/files/EFL_regexp_generator_rb.src/M000004.html +27 -0
- data/lib/doc/files/EFL_regexp_generator_rb.src/M000005.html +19 -0
- data/lib/doc/files/EFL_regexp_generator_rb.src/M000006.html +20 -0
- data/lib/doc/files/EFL_regexp_generator_rb.src/M000007.html +19 -0
- data/lib/doc/files/EFL_regexp_rb.html +139 -0
- data/lib/doc/files/EFL_syntactic_sugar_rb.html +208 -0
- data/lib/doc/files/EFL_syntactic_sugar_rb.src/M000001.html +29 -0
- data/lib/doc/files/EFL_syntactic_sugar_rb.src/M000002.html +19 -0
- data/lib/doc/fr_class_index.html +28 -0
- data/lib/doc/fr_file_index.html +30 -0
- data/lib/doc/fr_method_index.html +56 -0
- data/lib/doc/index.html +24 -0
- data/tests/Add_Sup_1.rb +223 -0
- data/tests/Add_Sup_1.rb.bak +223 -0
- data/tests/Add_Sup_1_NI.rb +25 -0
- data/tests/Add_Sup_2.rb +142 -0
- data/tests/Add_Sup_2.rb.bak +140 -0
- data/tests/All.rb +2 -0
- data/tests/All_1.rb +7 -0
- data/tests/All_2.rb +7 -0
- data/tests/All_2.rb.bak +5 -0
- data/tests/BeforeAfter.rb +83 -0
- data/tests/Bloques.rb +34 -0
- data/tests/Bloques.rb.bak +34 -0
- data/tests/Complementary.rb +144 -0
- data/tests/ComplementaryZoom.rb +78 -0
- data/tests/Del.rb +126 -0
- data/tests/Dup.rb +55 -0
- data/tests/Dup.rb.bak +54 -0
- data/tests/Error.rb +11 -0
- data/tests/ErrorArgClass.rb +169 -0
- data/tests/ErrorArgClass.rb.bak +158 -0
- data/tests/ErrorCollision.rb +218 -0
- data/tests/ErrorCollision.rb.bak +219 -0
- data/tests/ErrorWithoutDeclaration.rb +60 -0
- data/tests/ErrorWithoutDeclaration.rb.bak +60 -0
- data/tests/Extract.rb +56 -0
- data/tests/ExtractDollar.rb +17 -0
- data/tests/HashTest.rb +54 -0
- data/tests/HashTest.rb.bak +54 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/List.cpp +75 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/ListTransformer.rb +69 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/ListTransformer.rb.bak +100 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/ejecutame.bat +1 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/outDir/MyClassList.cpp +75 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/runme.bat +1 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/specification1.txt +5 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/specification2.txt +3 -0
- data/tests/Lista Czarnecki/AntiguaInterfaz/specification3.txt +5 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/List.cpp +75 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/ListTransformer.rb +58 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/ListTransformer.rb.bak +57 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/ejecutame.bat +1 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/outDir/MyClassList.cpp +75 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/outDir/NewClassList.cpp +75 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/specification1.txt +5 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/specification1.txt.bak +5 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/specification2.txt +3 -0
- data/tests/Lista Czarnecki/NuevaInterfaz/specification3.txt +5 -0
- data/tests/Minus.rb +89 -0
- data/tests/Plus.rb.bak +48 -0
- data/tests/REVit.rb +84 -0
- data/tests/RenameTest.rb +46 -0
- data/tests/RenameTest.rb.bak +46 -0
- data/tests/SubCrash.rb +26 -0
- data/tests/SubList.rb.bak +43 -0
- data/tests/archAuxiliares/1.txt +328 -0
- data/tests/archAuxiliares/2.txt +328 -0
- data/tests/archAuxiliares/Bloques/s1.txt +328 -0
- data/tests/archAuxiliares/Copia de Matriz.java +19 -0
- data/tests/archAuxiliares/Gen/Tesis_156_1.lgi +10 -0
- data/tests/archAuxiliares/Gen/Tesis_156_2.lgi +10 -0
- data/tests/archAuxiliares/Gen/t01.txt +328 -0
- data/tests/archAuxiliares/Gen/t01.txt.bak +328 -0
- data/tests/archAuxiliares/Gen/t02.txt +328 -0
- data/tests/archAuxiliares/Gen/t02.txt.bak +328 -0
- data/tests/archAuxiliares/Gen/t03.txt +328 -0
- data/tests/archAuxiliares/Gen/t03.txt.bak +328 -0
- data/tests/archAuxiliares/Gen/t04.txt +328 -0
- data/tests/archAuxiliares/Gen/t04.txt.bak +328 -0
- data/tests/archAuxiliares/Gen/t1.txt +328 -0
- data/tests/archAuxiliares/Gen/t1.txt.bak +328 -0
- data/tests/archAuxiliares/Gen/t2.txt +328 -0
- data/tests/archAuxiliares/Gen/t2.txt.bak +328 -0
- data/tests/archAuxiliares/Gen/t5.txt +328 -0
- data/tests/archAuxiliares/Gen/t9.txt +328 -0
- data/tests/archAuxiliares/Gen/t9.txt.bak +328 -0
- data/tests/archAuxiliares/GenTesis_156_1.lgi +10 -0
- data/tests/archAuxiliares/Matriz.java +74 -0
- data/tests/archAuxiliares/MatrizOut.java +74 -0
- data/tests/archAuxiliares/MatrizOut10.java +68 -0
- data/tests/archAuxiliares/MatrizOut11.java +86 -0
- data/tests/archAuxiliares/MatrizOut2.java +74 -0
- data/tests/archAuxiliares/MatrizOut3.java +74 -0
- data/tests/archAuxiliares/MatrizOut4.java +74 -0
- data/tests/archAuxiliares/MatrizOut5.java +21 -0
- data/tests/archAuxiliares/MatrizOut6.java +21 -0
- data/tests/archAuxiliares/MatrizOut7.java +21 -0
- data/tests/archAuxiliares/MatrizOut8.java +16 -0
- data/tests/archAuxiliares/MatrizOut9.java +86 -0
- data/tests/archAuxiliares/MatrizOut_9.java +86 -0
- data/tests/archAuxiliares/Matriz_1.java +74 -0
- data/tests/archAuxiliares/Matriz_10.java +68 -0
- data/tests/archAuxiliares/Matriz_11.java +86 -0
- data/tests/archAuxiliares/Matriz_2.java +74 -0
- data/tests/archAuxiliares/Matriz_3.java +74 -0
- data/tests/archAuxiliares/Matriz_4.java +74 -0
- data/tests/archAuxiliares/Matriz_5.java +21 -0
- data/tests/archAuxiliares/Matriz_6.java +21 -0
- data/tests/archAuxiliares/Matriz_7.java +21 -0
- data/tests/archAuxiliares/Matriz_8.java +16 -0
- data/tests/archAuxiliares/Matriz_9.java +86 -0
- data/tests/archAuxiliares/Matriz_N_1.java +21 -0
- data/tests/archAuxiliares/Matriz_N_2.java +91 -0
- data/tests/archAuxiliares/N1.txt +18 -0
- data/tests/archAuxiliares/N1_EXPECTED.txt +18 -0
- data/tests/archAuxiliares/N1_OUT.txt +18 -0
- data/tests/archAuxiliares/N2_EXPECTED.txt +18 -0
- data/tests/archAuxiliares/N2_OUT.txt +18 -0
- data/tests/archAuxiliares/N3.txt +23 -0
- data/tests/archAuxiliares/N3_EXPECTED.txt +22 -0
- data/tests/archAuxiliares/N3_OUT.txt +22 -0
- data/tests/archAuxiliares/N4_EXPECTED.txt +10 -0
- data/tests/archAuxiliares/N4_OUT.txt +10 -0
- data/tests/archAuxiliares/N5_OUT.txt +18 -0
- data/tests/archAuxiliares/N6_OUT.txt +18 -0
- data/tests/archAuxiliares/PedidorTerceroWS.jsp +142 -0
- data/tests/archAuxiliares/Tesis_156.lgi +7 -0
- data/tests/archAuxiliares/aspectgen.rb +328 -0
- data/tests/archAuxiliares/aspectgenCopy.rb +328 -0
- data/tests/archAuxiliares/extract_dollar.txt +1 -0
- data/tests/archAuxiliares/minus.txt +26 -0
- data/tests/archAuxiliares/minus_expected_1.txt +26 -0
- data/tests/archAuxiliares/minus_expected_2.txt +26 -0
- data/tests/archAuxiliares/minus_out_1.txt +26 -0
- data/tests/archAuxiliares/minus_out_2.txt +26 -0
- data/tests/archAuxiliares/p1.txt +328 -0
- data/tests/archAuxiliares/p2.txt +328 -0
- data/tests/archAuxiliares/s1.txt +328 -0
- data/tests/archAuxiliares/s2.txt +328 -0
- data/tests/archAuxiliares/s3.txt +328 -0
- data/tests/archAuxiliares/s4.txt +328 -0
- data/tests/archAuxiliares/s5.txt +328 -0
- data/tests/archAuxiliares/s7.txt +328 -0
- data/tests/archAuxiliares/s8.txt +328 -0
- data/tests/archAuxiliares/s9.txt +328 -0
- data/tests/archAuxiliares/text.txt +1 -0
- data/tests/delay.rb +33 -0
- data/tests/delay.rb.bak +33 -0
- data/tests/satisfy.rb +44 -0
- data/tests/satisfy.rb.bak +34 -0
- metadata +252 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class <<sub_2>><<after_1>> {
|
|
5
|
+
|
|
6
|
+
private int[][] matriz;
|
|
7
|
+
private int numFilas, numOtrasCosas, numColumnas;
|
|
8
|
+
|
|
9
|
+
public <<before_2>><<sub_1>><<after_1>> (int numFilas, int numColumnas) {
|
|
10
|
+
numFilas = numFilas;
|
|
11
|
+
numColumnas = numColumnas;
|
|
12
|
+
numOtrasCosas = numOtrasCosas;
|
|
13
|
+
matriz = new int[numFilas][numColumnas];
|
|
14
|
+
} /* <<before_2>><<sub_1>><<after_1>> */
|
|
15
|
+
|
|
16
|
+
public void leer<<before_2>><<sub_1>><<after_1>>() throws IOException{
|
|
17
|
+
BufferedReader entradaTeclado = Text.open(System.in);
|
|
18
|
+
for (int i=0; i<numFilas; i++) {
|
|
19
|
+
for (int j=0; j<numColumnas; j++) {
|
|
20
|
+
System.out.print<<after_2>>("\tElemento[" + i + "][" + j +"] ?: ");
|
|
21
|
+
mAtriz[i][j] = Text.readInt(entradaTeclado);
|
|
22
|
+
} /* for */
|
|
23
|
+
} /* for */
|
|
24
|
+
} /* leer<<before_2>><<sub_1>><<after_1>> */
|
|
25
|
+
|
|
26
|
+
public void escribir<<before_2>><<sub_1>><<after_1>>() {
|
|
27
|
+
System.out.print("\nLa matriz resultado es:\n");
|
|
28
|
+
for (int i=0; i<numFilas; i++) {
|
|
29
|
+
System.out.print("\n\t");
|
|
30
|
+
for (int <<before_1>>j=0; j<numColumnas; j++) {
|
|
31
|
+
System.out.print(Text.writeInt(matriz[i][j], 2) + " ");
|
|
32
|
+
} /* for j */
|
|
33
|
+
} /* for i */
|
|
34
|
+
} /* leer<<before_2>><<sub_1>><<after_1>> */
|
|
35
|
+
|
|
36
|
+
public int obtenerNumFilas() {
|
|
37
|
+
return numFilas;
|
|
38
|
+
} /* obtenerNumFilas */
|
|
39
|
+
|
|
40
|
+
public int obtenerNumColumnas() {
|
|
41
|
+
return numColumnas;
|
|
42
|
+
} /* obtenerNumColumnas */
|
|
43
|
+
|
|
44
|
+
public int obtenerElemento(int i, int j) {
|
|
45
|
+
return matriz[i][j];
|
|
46
|
+
} /* obtenerElemento */
|
|
47
|
+
|
|
48
|
+
public void establecerElemento(int i, int j, int valor) {
|
|
49
|
+
matriz[i][j] = valor;
|
|
50
|
+
} /* establecerElemento */
|
|
51
|
+
|
|
52
|
+
public static boolean puedeRealizarseElProducto(<<before_2>><<sub_1>><<after_1>> matriz1, <<before_2>><<sub_1>><<after_1>> matriz2) {
|
|
53
|
+
// dice si es posible realizar el producto de matrices
|
|
54
|
+
return matriz1.obtenerNumColumnas() == matriz2.obtenerNumFilas();
|
|
55
|
+
} /* verificarProducto */
|
|
56
|
+
|
|
57
|
+
public static <<before_2>><<sub_1>><<after_1>> multiplicarMatrices(<<before_2>><<sub_1>><<after_1>> matriz1, <<before_2>><<sub_1>><<after_1>> matriz2) {
|
|
58
|
+
<<before_2>><<sub_1>><<after_1>> matrizResultado = new <<before_2>><<sub_1>><<after_1>>(matriz1.obtenerNumFilas(),
|
|
59
|
+
matriz2.obtenerNumColumnas());
|
|
60
|
+
int suma;
|
|
61
|
+
for (int i=0; i<matriz1.obtenerNumFilas(); i++) {
|
|
62
|
+
for (int j=0; j<matriz2.obtenerNumColumnasOtras(); j++) {
|
|
63
|
+
suma = 0;
|
|
64
|
+
for (int k=0; k<matriz1.obtenerNumColumnas(); k++) {
|
|
65
|
+
suma += matriz1.obtenerElemento(i,k) *
|
|
66
|
+
matriz2.obtenerElemento(k,j);
|
|
67
|
+
} /* for k */
|
|
68
|
+
matrizResultado.establecerElemento(i,j, suma);
|
|
69
|
+
} /* for j */
|
|
70
|
+
} /* for i */
|
|
71
|
+
return matrizResultado;
|
|
72
|
+
} /* multiplicarMatrices */
|
|
73
|
+
|
|
74
|
+
} /* Matriz<<after_1>> */
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class <<after_1>> {
|
|
5
|
+
|
|
6
|
+
private int[][] matriz;
|
|
7
|
+
private int numFilas, numOtrasCosas, numColumnas;
|
|
8
|
+
|
|
9
|
+
public <<before_2>><<after_1>> (int numFilas, int numColumnas) {
|
|
10
|
+
numFilas = numFilas;
|
|
11
|
+
numColumnas = numColumnas;
|
|
12
|
+
numOtrasCosas = numOtrasCosas;
|
|
13
|
+
matriz = new int[numFilas][numColumnas];
|
|
14
|
+
} /* <<before_2>><<after_1>> */
|
|
15
|
+
|
|
16
|
+
public void leer<<before_2>><<after_1>>() throws IOException{
|
|
17
|
+
BufferedReader entradaTeclado = Text.open(System.in);
|
|
18
|
+
for (int i=0; i<numFilas; i++) {
|
|
19
|
+
for (int j=0; j<numColumnas; j++) {
|
|
20
|
+
System.out.print<<after_2>>("\tElemento[" + i + "][" + j +"] ?: ");
|
|
21
|
+
mAtriz[i][j] = Text.readInt(entradaTeclado);
|
|
22
|
+
} /* for */
|
|
23
|
+
} /* for */
|
|
24
|
+
} /* leer<<before_2>><<after_1>> */
|
|
25
|
+
|
|
26
|
+
public void escribir<<before_2>><<after_1>>() {
|
|
27
|
+
System.out.print("\nLa matriz resultado es:\n");
|
|
28
|
+
for (int i=0; i<numFilas; i++) {
|
|
29
|
+
System.out.print("\n\t");
|
|
30
|
+
for (int <<before_1>>j=0; j<numColumnas; j++) {
|
|
31
|
+
System.out.print(Text.writeInt(matriz[i][j], 2) + " ");
|
|
32
|
+
} /* for j */
|
|
33
|
+
} /* for i */
|
|
34
|
+
} /* leer<<before_2>><<after_1>> */
|
|
35
|
+
|
|
36
|
+
public int obtenerNumFilas() {
|
|
37
|
+
return numFilas;
|
|
38
|
+
} /* obtenerNumFilas */
|
|
39
|
+
|
|
40
|
+
public int obtenerNumColumnas() {
|
|
41
|
+
return numColumnas;
|
|
42
|
+
} /* obtenerNumColumnas */
|
|
43
|
+
|
|
44
|
+
public int obtenerElemento(int i, int j) {
|
|
45
|
+
return matriz[i][j];
|
|
46
|
+
} /* obtenerElemento */
|
|
47
|
+
|
|
48
|
+
public void establecerElemento(int i, int j, int valor) {
|
|
49
|
+
matriz[i][j] = valor;
|
|
50
|
+
} /* establecerElemento */
|
|
51
|
+
|
|
52
|
+
public static boolean puedeRealizarseElProducto(<<before_2>><<after_1>> matriz1, <<before_2>><<after_1>> matriz2) {
|
|
53
|
+
// dice si es posible realizar el producto de matrices
|
|
54
|
+
return matriz1.obtenerNumColumnas() == matriz2.obtenerNumFilas();
|
|
55
|
+
} /* verificarProducto */
|
|
56
|
+
|
|
57
|
+
public static <<before_2>><<after_1>> multiplicarMatrices(<<before_2>><<after_1>> matriz1, <<before_2>><<after_1>> matriz2) {
|
|
58
|
+
<<before_2>><<after_1>> matrizResultado = new <<before_2>><<after_1>>(matriz1.obtenerNumFilas(),
|
|
59
|
+
matriz2.obtenerNumColumnas());
|
|
60
|
+
int suma;
|
|
61
|
+
for (int i=0; i<matriz1.obtenerNumFilas(); i++) {
|
|
62
|
+
for (int j=0; j<matriz2.obtenerNumColumnasOtras(); j++) {
|
|
63
|
+
suma = 0;
|
|
64
|
+
for (int k=0; k<matriz1.obtenerNumColumnas(); k++) {
|
|
65
|
+
suma += matriz1.obtenerElemento(i,k) *
|
|
66
|
+
matriz2.obtenerElemento(k,j);
|
|
67
|
+
} /* for k */
|
|
68
|
+
matrizResultado.establecerElemento(i,j, suma);
|
|
69
|
+
} /* for j */
|
|
70
|
+
} /* for i */
|
|
71
|
+
return matrizResultado;
|
|
72
|
+
} /* multiplicarMatrices */
|
|
73
|
+
|
|
74
|
+
} /* Matriz<<after_1>> */
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class Matriz {
|
|
5
|
+
|
|
6
|
+
private int[][] matriz;
|
|
7
|
+
private int numFilas, numOtrasCosas, numColumnas;
|
|
8
|
+
|
|
9
|
+
123
|
|
10
|
+
|
|
11
|
+
public 123 (int numFilas, int numColumnas) {
|
|
12
|
+
numFilas = numFilas;
|
|
13
|
+
Matriz
|
|
14
|
+
numColumnas = numColumnas;
|
|
15
|
+
numOtrasCosas = numOtrasCosas;
|
|
16
|
+
Matriz
|
|
17
|
+
matriz = new int[numFilas][numColumnas];
|
|
18
|
+
} /* 123 */
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
} /* Matriz */
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class Matriz {
|
|
5
|
+
|
|
6
|
+
private <<before>>[][] matriz;
|
|
7
|
+
private <<before>> numFilas, numOtrasCosas, numColumnas;
|
|
8
|
+
|
|
9
|
+
123
|
|
10
|
+
|
|
11
|
+
public 123 (<<before>> numFilas, <<before>> numColumnas) {
|
|
12
|
+
numFilas = numFilas;
|
|
13
|
+
Matriz
|
|
14
|
+
numColumnas = numColumnas;
|
|
15
|
+
numOtrasCosas = numOtrasCosas;
|
|
16
|
+
Matriz
|
|
17
|
+
matriz = new int[numFilas][numColumnas];
|
|
18
|
+
} /* 123 */
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
} /* Matriz */
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class Matriz {
|
|
5
|
+
|
|
6
|
+
private <<before>>[][] matriz;
|
|
7
|
+
private int numFilas, numOtrasCosas, numColumnas;
|
|
8
|
+
|
|
9
|
+
fuera
|
|
10
|
+
|
|
11
|
+
public fuera (int numFilas, int numColumnas) {
|
|
12
|
+
numFilas = numFilas;
|
|
13
|
+
dentro
|
|
14
|
+
numColumnas = numColumnas;
|
|
15
|
+
numOtrasCosas = numOtrasCosas;
|
|
16
|
+
dentro
|
|
17
|
+
matriz = new int[numFilas][numColumnas];
|
|
18
|
+
} /* fuera */
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
} /* Matriz */
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class matriz {Matriz
|
|
5
|
+
|
|
6
|
+
public Matriz (int numFilas, int numColumnas) {
|
|
7
|
+
numFilas = numFilas;
|
|
8
|
+
Matriz
|
|
9
|
+
numColumnas = numColumnas;
|
|
10
|
+
numOtrasCosas = numOtrasCosas;
|
|
11
|
+
Matriz
|
|
12
|
+
matriz = new int[numFilas][numColumnas];
|
|
13
|
+
} /* Matriz */
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
} /* matriz */
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class Matriz {{
|
|
5
|
+
|
|
6
|
+
public Matriz (int numFilas, int numColumnas) {
|
|
7
|
+
numFilas = numFilas;
|
|
8
|
+
numColumnas = numColumnas;
|
|
9
|
+
numOtrasCosas = numOtrasCosas;
|
|
10
|
+
matriz = new int[numFilas][numColumnas];
|
|
11
|
+
} /* Matriz */
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
numFilas = numFilas;
|
|
15
|
+
numColumnas = numColumnas;
|
|
16
|
+
numOtrasCosas = numOtrasCosas;
|
|
17
|
+
matriz = new int[numFilas][numColumnas];
|
|
18
|
+
} /* Matriz */
|
|
19
|
+
|
|
20
|
+
public void leerMatriz() throws IOException{
|
|
21
|
+
BufferedReader entradaTeclado = Text.open(System.in);
|
|
22
|
+
for (int i=0; i<numFilas; i++) {
|
|
23
|
+
for (int j=0; j<numColumnas; j++) {
|
|
24
|
+
System.out.print("\tElemento[" + i + "][" + j +"] ?: ");
|
|
25
|
+
mAtriz[i][j] = Text.readInt(entradaTeclado);
|
|
26
|
+
} /* for */
|
|
27
|
+
} /* for */
|
|
28
|
+
} /* leerMatriz */
|
|
29
|
+
|
|
30
|
+
public void escribirMatriz() {
|
|
31
|
+
System.out.print("\nLa matriz resultado es:\n");
|
|
32
|
+
for (int i=0; i<numFilas; i++) {
|
|
33
|
+
System.out.print("\n\t");
|
|
34
|
+
for (int j=0; j<numColumnas; j++) {
|
|
35
|
+
System.out.print(Text.writeInt(matriz[i][j], 2) + " ");
|
|
36
|
+
} /* for j */
|
|
37
|
+
} /* for i */
|
|
38
|
+
} /* leerMatriz */
|
|
39
|
+
|
|
40
|
+
public int obtenerNumFilas() {
|
|
41
|
+
|
|
42
|
+
public Matriz (int numFilas, int numColumnas) {
|
|
43
|
+
numFilas = numFilas;
|
|
44
|
+
numColumnas = numColumnas;
|
|
45
|
+
numOtrasCosas = numOtrasCosas;
|
|
46
|
+
matriz = new int[numFilas][numColumnas];
|
|
47
|
+
} /* Matriz */
|
|
48
|
+
|
|
49
|
+
return numFilas;
|
|
50
|
+
} /* obtenerNumFilas */
|
|
51
|
+
|
|
52
|
+
public int obtenerNumColumnas() {
|
|
53
|
+
return numColumnas;
|
|
54
|
+
} /* obtenerNumColumnas */
|
|
55
|
+
|
|
56
|
+
public int obtenerElemento(int i, int j) {
|
|
57
|
+
return matriz[i][j];
|
|
58
|
+
} /* obtenerElemento */
|
|
59
|
+
|
|
60
|
+
public void establecerElemento(int i, int j, int valor) {
|
|
61
|
+
matriz[i][j] = valor;
|
|
62
|
+
} /* establecerElemento */
|
|
63
|
+
|
|
64
|
+
public static boolean puedeRealizarseElProducto(Matriz matriz1, Matriz matriz2) {
|
|
65
|
+
// dice si es posible realizar el producto de matrices
|
|
66
|
+
return matriz1.obtenerNumColumnas() == matriz2.obtenerNumFilas();
|
|
67
|
+
} /* verificarProducto */
|
|
68
|
+
|
|
69
|
+
public static Matriz multiplicarMatrices(Matriz matriz1, Matriz matriz2) {
|
|
70
|
+
Matriz matrizResultado = new Matriz(matriz1.obtenerNumFilas(),
|
|
71
|
+
matriz2.obtenerNumColumnas());
|
|
72
|
+
int suma;
|
|
73
|
+
for (int i=0; i<matriz1.obtenerNumFilas(); i++) {
|
|
74
|
+
for (int j=0; j<matriz2.obtenerNumColumnasOtras(); j++) {
|
|
75
|
+
suma = 0;
|
|
76
|
+
for (int k=0; k<matriz1.obtenerNumColumnas(); k++) {
|
|
77
|
+
suma += matriz1.obtenerElemento(i,k) *
|
|
78
|
+
matriz2.obtenerElemento(k,j);
|
|
79
|
+
} /* for k */
|
|
80
|
+
matrizResultado.establecerElemento(i,j, suma);
|
|
81
|
+
} /* for j */
|
|
82
|
+
} /* for i */
|
|
83
|
+
return matrizResultado;
|
|
84
|
+
} /* multiplicarMatrices */
|
|
85
|
+
|
|
86
|
+
} /* Matriz */
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class Matriz {
|
|
5
|
+
|
|
6
|
+
private int[][] matriz;
|
|
7
|
+
private int numFilas, numOtrasCosas, numColumnas;
|
|
8
|
+
|
|
9
|
+
Matriz
|
|
10
|
+
|
|
11
|
+
public Matriz (int numFilas, int numColumnas) {
|
|
12
|
+
numFilas = numFilas;
|
|
13
|
+
Matriz
|
|
14
|
+
numColumnas = numColumnas;
|
|
15
|
+
numOtrasCosas = numOtrasCosas;
|
|
16
|
+
Matriz
|
|
17
|
+
matriz = new int[numFilas][numColumnas];
|
|
18
|
+
} /* Matriz */
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
} /* Matriz */
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import java.io.*;
|
|
2
|
+
import javagently.*;
|
|
3
|
+
|
|
4
|
+
public class Matriz {
|
|
5
|
+
|
|
6
|
+
private int[][] matriz;
|
|
7
|
+
private int numFilas, numOtrasCosas, numColumnas;
|
|
8
|
+
|
|
9
|
+
public Matriz (int numFilas, int numColumnas) {
|
|
10
|
+
|
|
11
|
+
public Matriz (int numFilas, int numColumnas) {
|
|
12
|
+
numFilas = numFilas;
|
|
13
|
+
numColumnas = numColumnas;
|
|
14
|
+
numOtrasCosas = numOtrasCosas;
|
|
15
|
+
matriz = new int[numFilas][numColumnas];
|
|
16
|
+
} /* Matriz */
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
numFilas = numFilas;
|
|
20
|
+
numColumnas = numColumnas;
|
|
21
|
+
numOtrasCosas = numOtrasCosas;
|
|
22
|
+
matriz = new int[numFilas][numColumnas];
|
|
23
|
+
} /* Matriz */
|
|
24
|
+
|
|
25
|
+
public void leerMatriz() throws IOException{
|
|
26
|
+
BufferedReader entradaTeclado = Text.open(System.in);
|
|
27
|
+
for (int i=0; i<numFilas; i++) {
|
|
28
|
+
for (int j=0; j<numColumnas; j++) {
|
|
29
|
+
System.out.print("\tElemento[" + i + "][" + j +"] ?: ");
|
|
30
|
+
mAtriz[i][j] = Text.readInt(entradaTeclado);
|
|
31
|
+
} /* for */
|
|
32
|
+
} /* for */
|
|
33
|
+
} /* leerMatriz */
|
|
34
|
+
|
|
35
|
+
public void escribirMatriz() {
|
|
36
|
+
System.out.print("\nLa matriz resultado es:\n");
|
|
37
|
+
for (int i=0; i<numFilas; i++) {
|
|
38
|
+
System.out.print("\n\t");
|
|
39
|
+
for (int j=0; j<numColumnas; j++) {
|
|
40
|
+
System.out.print(Text.writeInt(matriz[i][j], 2) + " ");
|
|
41
|
+
} /* for j */
|
|
42
|
+
} /* for i */
|
|
43
|
+
} /* leerMatriz */
|
|
44
|
+
|
|
45
|
+
public int obtenerNumFilas() {
|
|
46
|
+
|
|
47
|
+
public Matriz (int numFilas, int numColumnas) {
|
|
48
|
+
numFilas = numFilas;
|
|
49
|
+
numColumnas = numColumnas;
|
|
50
|
+
numOtrasCosas = numOtrasCosas;
|
|
51
|
+
matriz = new int[numFilas][numColumnas];
|
|
52
|
+
} /* Matriz */
|
|
53
|
+
|
|
54
|
+
return numFilas;
|
|
55
|
+
} /* obtenerNumFilas */
|
|
56
|
+
|
|
57
|
+
public int obtenerNumColumnas() {
|
|
58
|
+
return numColumnas;
|
|
59
|
+
} /* obtenerNumColumnas */
|
|
60
|
+
|
|
61
|
+
public int obtenerElemento(int i, int j) {
|
|
62
|
+
return matriz[i][j];
|
|
63
|
+
} /* obtenerElemento */
|
|
64
|
+
|
|
65
|
+
public void establecerElemento(int i, int j, int valor) {
|
|
66
|
+
matriz[i][j] = valor;
|
|
67
|
+
} /* establecerElemento */
|
|
68
|
+
|
|
69
|
+
public static boolean puedeRealizarseElProducto(Matriz matriz1, Matriz matriz2) {
|
|
70
|
+
// dice si es posible realizar el producto de matrices
|
|
71
|
+
return matriz1.obtenerNumColumnas() == matriz2.obtenerNumFilas();
|
|
72
|
+
} /* verificarProducto */
|
|
73
|
+
|
|
74
|
+
public static Matriz multiplicarMatrices(Matriz matriz1, Matriz matriz2) {
|
|
75
|
+
Matriz matrizResultado = new Matriz(matriz1.obtenerNumFilas(),
|
|
76
|
+
matriz2.obtenerNumColumnas());
|
|
77
|
+
int suma;
|
|
78
|
+
for (int i=0; i<matriz1.obtenerNumFilas(); i++) {
|
|
79
|
+
for (int j=0; j<matriz2.obtenerNumColumnasOtras(); j++) {
|
|
80
|
+
suma = 0;
|
|
81
|
+
for (int k=0; k<matriz1.obtenerNumColumnas(); k++) {
|
|
82
|
+
suma += matriz1.obtenerElemento(i,k) *
|
|
83
|
+
matriz2.obtenerElemento(k,j);
|
|
84
|
+
} /* for k */
|
|
85
|
+
matrizResultado.establecerElemento(i,j, suma);
|
|
86
|
+
} /* for j */
|
|
87
|
+
} /* for i */
|
|
88
|
+
return matrizResultado;
|
|
89
|
+
} /* multiplicarMatrices */
|
|
90
|
+
|
|
91
|
+
} /* Matriz */
|