Programa para el testeo de las funciones.
Programa para el testeo de las funciones.Para compilar o código example_matrix_assignment_bin.cpp:
g++ -static -o example_matrix_assignment_bin example_matrix_assignment_bin.cpp -lpdsramm
Para executar o programa:
./example_matrix_assignment_bin
Retornando por consola:
A:
0 1 0 0 0
1 1 0 1 0
1 0 1 0 0
0 0 0 1 0
1 1 1 0 1
B:
0 1
1 1
A.XorAssigAt(1,1,B):
0 1 0 0 0
1 1 1 1 0
1 1 0 0 0
0 0 0 1 0
1 1 1 0 1
A.OrAssigAt(1,1,B):
0 1 0 0 0
1 1 1 1 0
1 1 1 0 0
0 0 0 1 0
1 1 1 0 1
A.AndAssigAt(1,1,B):
0 1 0 0 0
1 0 1 1 0
1 1 1 0 0
0 0 0 1 0
1 1 1 0 1
V:
0
1
0
1
A.XorAssigVectorAtCol(2,V):
0 1 0 0 0
1 0 0 1 0
1 1 1 0 0
0 0 1 1 0
1 1 1 0 1
B:
0 1
1 1
C:
1 1
1 0
B.XorAssig(C):
1 0
0 1
Código example_matrix_assignment_bin.cpp:
#include <iostream>
#include <Pds/Ra>
int main(void)
{
A.
Print(
"\nA.XorAssigAt(1,1,B):\n");
A.
Print(
"\nA.OrAssigAt(1,1,B):\n");
A.
Print(
"\nA.AndAssigAt(1,1,B):\n");
A.
Print(
"\nA.XorAssigVectorAtCol(2,V):\n");
B.
Print(
"\nB.XorAssig(C):\n");
return 0;
}
La clase tipo Pds::Matrix . Esta clase genera una matriz de Nlin lineas y Ncol columnas....
La clase tipo Pds::Vector . Esta clase genera una matriz de Nlin lineas y 1 columna....
const std::string Matrix
Tag de un objeto de tipo Pds::Ra::Tag::Matrix.
bool XorAssig(const Pds::Matrix &B, double Umbral=0.5)
Xor y acumula en si mismo (A), una matriz B.
bool XorAssigAt(unsigned int lin, unsigned int col, const Pds::Matrix &B, double Umbral=0.5)
Xor y acumula en si mismo (A), una matriz B desde un punto (lin,col) haciendo una intersección.
bool OrAssigAt(unsigned int lin, unsigned int col, const Pds::Matrix &B, double Umbral=0.5)
Or y acumula en si mismo (A), una matriz B desde un punto (lin,col) haciendo una intersección.
bool FillRandC(double p1)
Inicializa la matriz con números aleatórios unos y ceros, la probabilidad de 1 es p1.
bool XorAssigVectorAtCol(unsigned int col, const Pds::Vector &B, double Umbral=0.5)
Xor y acumula en si mismo (A), una matriz B desde un punto (0,col) haciendo una intersección.
bool AndAssigAt(unsigned int lin, unsigned int col, const Pds::Matrix &B, double Umbral=0.5)
And y acumula en si mismo (A), una matriz B desde un punto (lin,col) haciendo una intersección.
void Print(const std::string &str, unsigned int precision) const
Imprime en pantalla el contenido de la matriz después del texto indicado en str.